症状

Web 自动化操作 ("单击链接"、"填充文本字段"或"获取元素的详细信息"等) 在运行时失败。  

验证问题

在桌面流的初始开发期间,用户能够捕获 Web 元素并与之交互。 

原因

某些网页动态更改其基础 HTML 结构。 因此,最初用于定位元素的 CSS 选择器不再适用。 

解决方案

手动创建一个新的更可靠的 CSS 选择器,即使 HTML 结构发生更改,该选择器也能够找到感兴趣的元素。 

为此,在失败后再次捕获 Web 元素,并将新 CSS 选择器与旧 CSS 选择器进行比较。 

可以通过选择器生成器窗口查看和编辑 CSS 选择器: 

PAD 选择器生成器窗口

请注意两个选择器之间的差异 - 可能有一个或多个不同的元素/属性。 

编辑选择器以仅包含不容易更改的静态部分。 可以遵循以下一些方法: 

  1. 删除任何动态值(如数字),并相应地修改 (开头、结尾、包含等)  

  2. 如有必要,从选择器路径中删除整个元素 

  3. 使用"包含"选择器,使用网页中可见的文本找到元素 

示例 

  1. 选择器包含一个包含动态类的元素,例如 div[class="some_class123"]。 可修改为 div[class^="some_class"] ("Starts with"运算符)  

  2. 选择器包含具有许多动态属性的元素,例如 div[class="some_class123"][id="some_id123"] > a[id="some_id"]。 这可修改为[id="some_id"], (完全忽略第一)  

  3. 感兴趣的元素具有一些静态文本 - 可以修改选择器以仅包含该文本。 例如,div[class="some_class123"][id="some_id123"]> a[id="some_id"] 可以修改为 a:contains ("the_text_we_see_on_the_webpage")  

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

你对翻译质量的满意程度如何?

哪些因素影响了你的体验?

是否还有其他反馈?(可选)

谢谢您的反馈意见!

×