拟人化操作
1、前言
与友商的 RPA 引擎相比,花漾灵动 RPA 最大的差异化特征是:拟人化操作。 花漾灵动认为,并不是所有的网站都欢迎RPA行为,有些网站甚至会刻意杜绝 RPA 自动化操作,在这种背景下,如果 RPA 引擎能够真实模拟人类操作行为,对用户来说显然是极大的福音。
本文向各位读者介绍花漾灵动 RPA 在拟人化操作方面的具体表现,以及在某些特殊场景下,如何忽略拟人化操作以提升效率。
2、花漾拟人化操作的具体表现
花漾灵动RPA在拟人化操作主要体现在以下三个方面,分别是:
1. 基于浏览器内核,产生真实的键鼠硬件消息,而非虚拟的软件消息
假设网页中有一个按钮,我们现在要点击此按钮,一般而言有两种做法:一种是通过鼠标产生点击事件,一种是通过 JavaScript 向网页按钮发送一个 click 事件, 这两种做法看起来效果一样,但却有着本质的区别。前一种做法网页会接收到鼠标的真实点击事件,后一种做法只是一种软件的事件模拟与函数调用。 对于网站来说,如果某个操作是通过软件的函数调用产生的,网站想判断该操作是否由机器人触发是比较简单的事情。
花漾灵动 RPA 基于花漾指纹浏览器,从内核上将花漾RPA的所有操作全部形成真实的键鼠事件,这是花漾RPA拟人化操作的基础支撑。
2. 鼠标、键盘的操作轨迹
假设我们将鼠标从网页中的 A 点移动到 B 点,由于网页可以接收到每一个像素的移动事件,因此,网站很容易通过鼠标的操作轨迹判断出当前操作者是否是机器人。 花漾灵动 RPA 的鼠标移动轨迹能够完全拟合人类的真实移动轨迹,并通过了 Google、Cloudflare等业界著名网站的检测。
《鼠标的移动轨迹》
当然,拟人化操作并不仅仅只有鼠标的移动轨迹模拟,还包括键盘文字的输入、点击某页面节点时确保页面节点必须位于可视区域等等,这里不再展开详叙。
3. 用户的思考与延迟时间
另一个显然的问题是,人不像机器,可以永不停歇的操作,人需要思考,有思考就必定存在延时。在花漾中,通过流程属性中 “默认节点间隔时长” 与 “默认节点拟人操作” 这两个参数来控制,如下图所示:
《流程属性的默认执行策略》
- 默认节点间隔时长:指下一个流程节点开始执行时,拟间隔的时长,以秒为单位,默认为1秒
- 默认节点拟人操作:指该操作是否采用拟人化,如流程节点“移动鼠标”则模拟人类的真实操作,流程节点“输入文本”则模拟人类的键盘敲击等等,默认开启
需要注意的是,流程属性中的“执行策略”,约束了当前流程所有节点的默认行为,您也可以在某个流程节点中单独指定这些属性, 此时,流程节点的设置会覆盖流程属性中的设置。以流程节点 “输入内容” 为例,我们可以在它的 “执行策略” 中,单独设置这些属性,如下图所示:
《流程节点的执行策略》
3、忽略拟人化操作
拟人化固然有千般好处,但显然,从执行效率上来说,拟人化操作是打了折扣的。有时,我们为了提高执行效率,需要忽略拟人化操作。 这种情况下,可以在流程属性的“执行策略”中,或者在单独的某些流程节点的“执行策略”中,缩短节点间隔时长并关闭拟人化操作,如下图所示:
《在流程属性中关闭拟人化操作》
我们以百度检索为例,在拟人化操作下,其行为轨迹类似如下动画:
《拟人化操作的百度检索》
如果关闭上述流程的拟人化操作,其行为轨迹如下所示,可以看到,既没有鼠标移动轨迹,也没有键盘敲击的延迟,但换来了效率的提升:
《忽略拟人化操作的百度检索》
4、总结
拟人化操作 是花漾灵动 RPA 与友商的 RPA 相比最大的差异化特征。“拟人化操作” 默认情况下是开启的,但在某些场景下,如果为了提升效率, 可以通过在流程属性的“执行策略”或者某些流程节点的“执行策略”,关闭拟人化操作。