问题
想在企业系统(网页)中点击下拉列表然后选中 Item, 使用了 Hover 和 Click 都不行。有什么解决办法?
最终使用 UiPath 得到的错误如下:
原因分析 及 解决思路
尝试模拟相关的事件,然后触发下拉列表,再用 selector 点击相关的选项。
有些 Input 元素是在 Click 或者 hover 之后才会将 Items 动态加载,然后插入到选项中显示出来,直接用 Selector 选中是不行的。那时候,Items 还没有创建出来。尝试用 Set Web Attribute Activity 直接设置 Input value 属性
正常默认情况下,在下拉列表上点击其实就是将点击选项对应的 Value 赋值给 Input 框的Value 属性,原生的 HTML 的行为就是这样的。Set Web Attribute Activity 前后都要模拟相关的动作,来触发事件*
有些控件在用户输入之前,执行回调函数来更新数据,在用户输入之后执行回调函数来将数据存放到某些变量里,或者做出一些运算。当方法2不行的时候,可以尝试在 Set Web Attribute Activity 之前和之后都加入一些事件来触发响应的事件。分析 URL
页面从用户处收集到的信息都会以某种方式发送给服务器。
如果是 GET 方法,数据是直接在 URL 上面发送的,可以按照原来的规律,用参数构造出目标 URL而无需理会输入框的交互,这是最简单快捷的方法;
如果是是 POST 方法,数据是在 POST DATA 那里发送的,可以尝试分析POST 的数据,然后模拟 POST 的动作来获取服务器的数据。
总结
网络抓取之前一定要先分析网页特征和结构,切不可以贸贸然动手。比如上述的例子,假如可以分析出 GET 的参数并构造出 URL,那么很可能就能省下大量的时间和精力。
返回目录
更多 UiPath 相关的资讯,请关注公众号:流程自动化机器人教程
由于简书禁止直接在文章中插入公众号二维码,请点击 这里 了解添加该公众号的细节。