RPA-UIPath-007 Selector-基础
关于Selector
要自动执行用户界面中的特定操作,您需要与各种窗口、按钮、下拉列表以及许多其他元素交互。可以识别用户界面元素的一种方法是使用它们在屏幕上的位置,但这可能不可靠。
为了解决这个问题,UiPath Studio 使用我们所称的选取器。它们以 XML 片段的形式存储图形用户界面元素及其父元素的属性。
大多数情况下,选取器是由 Studio 自动生成的,并且不需要您额外输入,特别是当您尝试自动化的应用程序具有静态用户界面时。
然而,有些软件程序的布局可以变化,且属性节点的值也不是一成不变,例如一些网页应用程序。UiPath Studio 无法预测这些更改,因此,您可能必须手动生成一些选取器。
选取器具有以下结构:<node_1/><node_2/>...<node_N/>
最后一个节点表示您感兴趣的图形用户界面元素,而前面的所有节点都表示该元素的父元素。<node_1> 通常称为根节点,表示应用程序的顶部窗口。
每个节点都有一个或多个属性,可以帮助您正确识别所选应用程序的特定级别。
每个节点的格式如下: <ui_system attr_name_1='attr_value_1' ... attr_name_N='attr_value_N'/>
每个属性都有一个赋值。重要的是选择具有常量值的属性。如果每次应用程序启动时,属性的值都会发生变化,则选取器将无法正确识别元素。
选取器存储在活动的“属性”面板中的“输入”>“目标”>“选取器”下。****与图形元素相关的所有活动都具有此属性

“选取器编辑器”**窗口用于查看自动生成的选取器以及编辑该选取器及其属性。要访问该窗口,请在“工作流设计器”**面板中,单击活动主体中的“选项“按钮,然后选择“编辑选取器”****。

也可以使用“属性”**面板中“选取器”**字段旁边的省略号按钮访问此窗口。


该按钮通过检查选取器定义的有效性以及目标元素在屏幕上的可见性来显示选取器的状态。
验证按钮具有三种状态:




该按钮与用户界面探测器验证状态相关。
Indicate Element 指出一个新的用户界面元素以替换前一个。
Repair 使您能够重新指定相同的目标用户界面元素并修复选取器。此操作并不完全替换以前的选取器。只有在选取器无效时,该按钮才可用。
Highlight 将目标元素置于前台。高亮显示一直持续到该选项被单击禁用为止。仅当选取器有效时才会启用该按钮。
Edit Attributes 包含标识目标应用程序时所需的所有应用程序组件(窗口、按钮等)。该部分可以编辑。
Edit Selector 保存实际的选取器。该部分可以编辑。
Open in UI Explorer 启动用户界面探测器。该选项仅对有效的选取器启用。
UI Explorer 用户界面探测器
用户界面探测器是一个高级工具,使您可以为特定用户界面元素创建一个自定义选取器。**它是独立工具,可以从 Automation Cloud 实例中的资源中心**下载,也可以从 Studio 下载(仅限将 UiPath.UIAutomation.Activities 包作为项目的依赖项安装时)。
将用户界面探测器用作独立工具时无需安装 Studio。如果您要确保可以使用选取器自动化应用程序,此工具非常方便。它可以让您简单地检查元素,无需构建流程。独立包还包含“SetupExtensions”****实用程序,因此可以安装浏览器扩展程序和 JavaBridge 来检查您的所有自动化需求包含的元素。
要打开“用户界面探测器”**窗口,请单击“设计”**选项卡中“选取器”**部分中的按钮,或在指定目标用户界面元素后,单击“目标”**和“锚点”****属性的所有选取器的选择屏幕中的高级编辑器中的按钮。

或者,也可以从 Studio 后台视图中的“工具”页面启动用户界面探测器。****上下文菜单中的用户界面探测器使用当前版本的 Studio 附带的用户界面自动化库。

为确保选择最佳选取器,请记住:
添加或删除属性
添加父项或子项标签
使用通配符来替换变化值

用户界面探测器窗口字段说明
该按钮通过检查选取器定义的有效性以及目标元素在屏幕上的可见性来显示选取器的状态。
验证按钮具有三种状态同编辑选取器中一样
即将验证选取器、有效选取器、无效选取器、修改的选取器,重新验证





设置包含几个选项:
用户界面框架 - 更改用于确定用户界面元素及其选取器的技术。可用的选项如下:
默认 – UiPath专有方法。通常可以很好地处理所有类型的用户界面。
主动式辅助 – 这是 Microsoft 之前给出的让应用程序可访问的解决方案。建议您在旧版软件中使用此选项(如果默认选项无效)。
用户界面自动化 – 这是 Microsoft 的改进型辅助功能模型。“默认”项无效时,建议您在较新的应用程序中使用此选项。
延迟还原 - 在系统加载完选取器数据前,延迟还原 UiExplorer 窗口。当指出在焦点丢失时自动关闭的用户界面元素 (如下拉列表或覆盖) 时,请使用该选项。
* 触发器选取器 - 在增加用户界面元素监控准确度时,请确保此元素在其父项中的唯一性。为触发器活动生成选取器时,请使用此选项。
可视化树面板
显示用户界面层次结构的树,通过单击每个节点前面的箭头,用于在其中导航。
默认情况下,当您第一次打开“用户界面探测器”时,此面板中会显示所有打开的应用程序并以字母顺序排列。****
双击树中的用户界面元素(或右击并选择“设置为目标元素”),填充“选取器编辑器”、“选取器属性”和“属性探测器”面板。****


搜索框
使您可以查找特定字符串。
如果找不到精确匹配项,则显示包含最接近匹配项的节点。支持通配符。
根据从“搜索依据”下拉列表中选择的属性,搜索内容可能区分大小写。
注意:搜索仅在所选用户界面对象下的树结构中查找匹配项。
搜索方式
过滤搜索结果,以仅显示选定属性或选取器。此下拉列表的内容根据所选用户界面元素而变化。
注意:如果“搜索依据”设置为“选取器”,则只能以 <attribute name1='value1' ... /> 格式输入一个节点。
仅子项
将搜索限制在所选节点的第一级子节点。默认情况下,该复选框是未选中状态。
选取器编辑器面板
显示指定用户界面对象的选取器,使您能够对其进行自定义。
面板的底部显示了必须在项目中使用的实际 XML 片段。找到所需的选取器后,可以从这里复制,然后将其粘贴到活动的“属性”面板中的“选取器”字段中。****
此面板的顶部用于查看选取器中的所有节点,并通过清除前面的复选框来清除不必要的节点。当启用或禁用属性或编辑底部面板中的选取器时,选取器节点列表中的元素将变为活动元素。一次只能有一个节点处于活动状态。
如果在此处选择节点,那么将在“选取器属性”和“属性探测器”面板中显示其属性。****
也可借助变量来编辑选取器;您可以使用 CTRL+K 热键在选取器本身中创建变量,或通过 CTRL+Space 组合指定已创建的变量。通过使用 CTRL+K 热键,您可以为变量指定值和名称。请注意,只能使用 string 变量。
选取器属性面板
显示选定节点的所有可用属性(来自“选取器编辑器”面板)。****
您可以通过选中或清除每个属性前面的复选框来添加或消除某些节点属性。
此外,您可以更改每个属性的值,但只有当新的选取器指向最初选定的用户界面对象时,才会保留此修改。
属性探测器面板
显示指定用户界面对象可以具有的所有属性,包括选取器中没有出现过的属性。这些属性无法更改。