在机器人工厂Z-Factory中如何进行界面元素(目标)编辑的操作?
2020-07-09 16:41:18
46次阅读
1个评论

在机器人工厂Z-Factory中如何进行界面元素(目标)编辑的操作?

收藏 0 0
    admin 官方人员
    2020-07-09 16:43:10

    实在 RPA 的目标选择器是自动工作的。只要我们把鼠标移 动到希望作为目标的界面元素上,遮罩会恰好遮住这个界面元素,并且会生成一段数据,实在RPA在运行的时候,用这段数据即可找到目标。

    当然,凡是自动工作,都难免会出错。在使用目标选择器的时候,

    常见的问题

    • 无论如何移动鼠标,都无法使遮罩恰好选中需要的界面元素(例如,遮罩太大, 遮住了整个窗口) ;

    • 遮罩可以恰好恰好选中界面元素,但用生成的数据查找目标时,发生了“错 选”:能找到界面元素,但找到的界面元素不是我们当初选取的。“漏选”:我们当初 选取的界面元素明明存在,却找不到了。 对于第一种情况,也就是无法遮住目标的情况,我们会在后面用比较多的篇幅详 细叙述。这里主要讨论的是第二种情况,也就是明明可以遮住目标,但在运行的时 候,却发生错选或漏选的情况。 我们在上一节中提到,当选取目标时,实在 RPA 会生成类似于这样的一串数据, 用来描述目标:

    {"window":[{"class":"CabinetWClass","type":"WindowControl","name":"章鱼 rpa 测试素材

     

    "index":1},{"class":"ShellTabWindowClass","type":"PaneControl","name":"章鱼 rpa 测试素材

     

    ","index":1},{"class":"DUIViewWndClassName","type":"PaneControl","name":"","index":1},{"class":"HWNDView","type":"PaneCo

     

    ntrol","name":"浏览器窗格","index":1},{"class":"DUIListView","type":"PaneControl","name":"Shell 文件夹视图

     

    ","index":1}],"shot":"res\\ac4ASenkPBIYEvVZMqXo.png","control":[{"class":"UIItemsView","type":"ListControl","name":"项目

     

    21 视图","index":1},{"class":"UIItem","type":"ListItemControl","name":"实在测试 1","index":1}]}

     

    实在 RPA 在运行流程的时候,就是根据这串数据中的描述,来查找目标的。所以,当发生错选或者漏选的时候,实际上就是这串数据出现了问题,需要对它进行修 改。如何修改呢?

     

    我们首先在“属性”栏,找到“目标”属性,这串数据就显示在后面的输入框 里。既然是输入框,理论上可以直接编辑其内容,但输入框太小,编辑起来非常困 难。需要修改目标的时候,推荐按输入框右边的按钮,如图中红框所示:

     

    图 3-9 编辑修改元素目标

     

    按下这个按钮,会弹出一个“目标编辑器”的窗口。上半部分是缩略图,表示作 为目标的界面元素的大致样子,实在 RPA 在查找目标的时候,并不会使用这张图片, 仅仅是让您查阅参考的。下半部分是“控件筛选器”,把描述目标的那串数据用一个 树形结构重新展示出来了,如图所示:

     

    图 3-10 目标编辑器

     

    22 实际上,这个树形结构里面,保存的是界面元素的某些特征,每一项都是一个特 征,这些特征是实在 RPA 自动选取的,只有当这些特征全部满足的时候,才会认为找 到了界面元素。而且,由于界面元素是相互嵌套的,实在 RPA 不仅会记录作为目标的 界面元素的特征,还会保存它的上面若干级的界面元素的特征。每一级的特征都必须 全部满足才行。

     

    这样严格的特征匹配,显然很容易造成“漏选”。比如,我们可以看到,Windows 为“文件夹”设定了一个“标题”,也就是 name 那一行,其内容是“实在测试 1” (这个标题通常不会让用户看到,但却是实际存在的)。实在 RPA 会把这个标题作为特 征的一部分,因为一般来说,按钮的标题是不会变的。但是,如果有一天,这个按钮 的标题发生了变化,就造成了漏选。

     

    怎么修改?


    我们看到,在 name 前面有一个勾选框,默认是处于已勾选 状态的。只需要点一下这个勾选框,将其置为未勾选的状态,实在 RPA 在找界面元素 的时候,就不会再使用这个特征,即使标题发生了变化,也能找到。

     

    但是,如果去掉了太多的特征,漏选是不太容易发生了,却会发生错选。所以, 如果界面元素比较复杂,或者特征经常发生变化,如何准确的编辑目标,既不发生错 选也不发生漏选,还是需要一定技巧的。很遗憾,这方面并没有特定的规则,只能多 多尝试,积累经验。下面有几条公共的经验,请读者先记住,然后再在实践中总结自 己的经验。

     

    最后,需要提醒的是:同样的界面元素,在不同的操作系统、不同的浏览器上,可 能特征也会发生变化。特别是 IE 和 Chrome 浏览器,在显示同一个页面的时候,同样 的界面元素可能会有完全不同的特征。

共1条 1

登录 后评论。没有帐号? 注册 一个。

Ziyi

  • 0 回答
  • 0 粉丝
  • 0 关注