哎,你在使用影刀RPA的过程中走了很多弯路吗?在与用户交流的过程中,我们发现很多用户会因为一些操作问题而纠结于bug。如果用户能提前或及时避免错误,就能获得更好的产品体验。
本期“影刀常见问题”将从“元素共性”入手,为用户解答这三个困惑:找不到元素怎么办?如果我找到很多元素呢?如何定位元素?

为了便于理解,选取了贴近应用的例子。
希望能帮你记录纠错,腾出更多的时间让你挖掘创意,用影刀创造更多的可能性,让这个产品变得有价值,变得有趣。
01找不到元素怎么办?
描述:错误消息:未找到控件。
故障排除:首先检查元素,看是否可以检查。
第一步:找到问题元素,双击进入元素编辑器界面。
△双击进入元素编辑界面。
步骤2:单击check元素。
△点击检查元素。
验证提示:未找到元素。
△没有找到元素。
原因:元素节点的属性不正确。
可能的情况:元素属性错误
√解法:点击“修复元素”,重新捕获元素。
△单击修复元素并重新捕获元素。
△元件修复成功。
可能性:运行时元素属性发生变化,网页/窗口对象重新加载时,部分元素属性会发生变化。
√解决方案①:不勾选已更改的属性。
比如在抓取酒店评论元素时,评论的数量会发生变化。取消选中innerText属性,并使用href属性来定位元素。
△取消选中change属性,使用其他属性定位元素。
√解法②:用通配符替换属性改变的部分。比如抓取酒店评论元素时,评论的数量会发生变化,变化的部分用通配符[*]匹配,匹配方式改为通配符。
△变化部分换成通配符,匹配方式改为通配符。可能:元素属性在抓取过程中发生变化,鼠标悬停时部分元素属性发生变化。
√解决方法:在元素编辑中寻找鼠标悬停改变的属性,取消勾选。
△取消选中带有悬停字段的属性。
验证提示:已找到该元素
原因:网页/窗口对象错误。
可能情况:网页对象错误,选择网页对象时选择了错误的网页对象。
√解决方法:检查网页对象是否是元素所在的网页对象。
例如,当操作网页对象web_page_中的元素时,将网页对象更改为web_page_
△选择正确的网页对象。
可能的情况:网页对象发生变化,操作过程中网页对象发生变化,但没有再次检索到网页对象。
√解决方法:使用[获取打开web对象]命令再次获取web对象,并在命令中更改Web对象。
例如,单击主页上的粘贴元素会弹出一个新窗口。如果在新窗口中直接单击link元素,将会报告一个错误,说明找不到控件。
△错误:未找到控件。

重新获取网页对象,并将click link元素中的网页对象修改为正常点击。
△修改link元素中的网页对象,正常点击。
可能:窗口对象错误,指定的窗口对象与元素的实际窗口不是同一个窗口。
√解法:在元素编辑界面找到元素所在的窗口对象,在指令配置中选择正确的窗口对象。
△在win元素中找到窗口名
△选择正确的窗口对象。
原因:操作元素的时机不对,元素还没加载就已经被操作了。
√解法:在操作指令前增加等待或延时指令。
△在操作指令前增加等待指令。
02如果发现很多元素呢?
描述:多个控件匹配,无法唯一定位。
原因:限制太松。
√解决方法:在选中的元素节点中添加定位元素的属性。
第一步:在元素库中找到匹配多个控件的元素,双击打开元素编辑器。
第二步:在元素编辑中展开元素节点,添加检查元素属性[带有文本、id、类型、类等字段的属性。更容易唯一地定位该元素]
△在编辑器中检查唯一定位元素的属性。
步骤3:检查元素,如果仍有多个元素被检查,则返回步骤2;如果元素不能被验证,取消在第二步中检查的属性并返回到第二步,直到只有目标元素被验证。
△检查元件
03使用索引定位元素
说明:如何在元素编辑中使用index属性定位元素?
√解决方案:
关于:索引属性定位
属性“索引”指示当前节点在父节点中的顺序。
△当前节点在父节点中的顺序
属性“index”是负数,表示当前节点在父节点中的倒数顺序。
△当前节点在父节点同类型的所有子节点中的顺序
属性“index-of-type”是负的:它表示当前节点在父节点的所有相同类型的子节点中的倒序。
△当前节点在父节点中所有同类型子节点中的倒数顺序。
04单击相似元素列表中指定位置的元素。
描述:在获得相似元素的列表后,你想点击列表中指定位置的一个条目。
√解决方法:打开网页-获取相似元素列表-获取列表中指定位置的物品-点击网页元素。
△解决方案列表
第一步:打开网页
△打开网页。
第二步:获取相似元素的列表
△获取相似元素列表
第三步:获取列表中指定位置的项目。

△获取列表指定位置的项目。
第四步:点击网页元素。
△点击网页元素。
结束
分叉是一家创新科技公司,专注RPA赛道自主研发核心产品——影刀RPA拥有完整的技术知识产权。公司帮助电商、金融、物流、医疗、通信等领域的企业和员工实现数字化智能化、自动化转型。


