使用RPA工具可以模拟鼠标实现对网页的点击,也可以通过模拟键盘实现录入资料或发送快捷键,所以通常在用UiPath做与网页有关的RPA项目时,最常用的就是click,typeinto等基础activity。
为什么很多人吐槽UiPath不稳定呢,大多是因为单一activity执行时有效,但整个项目串联起来运行时,因前后连贯性差而导致报错。
那么,用UiPath模拟人类操作网页,但遇到网页有时反应慢有时反应快要怎么办呢?
接下来笔者揭露一些常见的做法给大家参考,每种做法没有优劣之分,建议大家依项目需求灵活运用。
1. 延时操作: Delay
既然网页有时反应慢有时反应快,统一在网页容易卡顿的地方加入延时“delay”,等待网页反应完成之后再进行下一步操作。
具体做法分两种:
① 使用activity“delay”,如下填入00:00:00格式的延迟时间。
②在click/type into等activity属性中添加delay时间。
2. 通过wait element vanish等待特定Ui Element消失后再执行其他动作:
将timeout设定为超过预计网页反应的最长时间,UiPath将在你设定的某个UiElement彻底消失之后才会继续向下进行。
3. 利用retry scope及find element,element exists等待特定Ui Element出现后再执行其他动作。
这个组合是通过利用重复执行次数及重复间隔时间来控制最长等待时间的。
4. 利用Dowhile和element exists建立循环等待特定Ui Element出现。
这种做法是建立了一个死循环,不限于反应时间长短,但要谨慎使用,因为死循环本身就是一种风险。
以上介绍的4种对策,适用状况各不相同,需要大家仔细观察网页反应前/后的不同状况,做出自己的最优判断。