为了提高软件的安全性,很多系统,包括web系统和手机上的应用,慢慢的变多的使用验证码来提升系统的安全性,防止非法访问,特别是防止机器人的访问。
如上图所示,就是最近很常用的“滑块验证码”。它要求用户“肉眼”识别左边的滑块,并且准确的拖动到右边的位置。
这就给RPA带来的很大的难度。传统的验证码识别,采用不规则图文的方式。不规则图文的验证码,我们一般使用“学习算法”,学习足够多的图片之后,就能够达到比较好的识别率。但是滑块验证码,由于背景图案的复杂性、多边形,滑块位置的随机性,导致难以实现。
泽众RPA机器人采用了一个新的算法来实现滑块验证码自动识别,从而能够达到通过这些验证码,实现流程自动化。
具体而言的算法,主要是采用“霍夫变换”的角识别算法,先去识别滑块缩在位置的各个典型的直角,然后再去识别图形中的所有直角,并且再次基础上根据滑块角之间的相对特征,去匹配所有图案中可能的角的集合。若能够匹配成功,则说明大概率识别成功。
如果遇到背景图很复杂的,也可能会引起识别失败。对于识别失败的情况,可以再识别一次。通过多次识别,来通过滑块解锁验证。
这个算法被集成到新版本的泽众RPA公用函数中,用起来十分便捷,有兴趣小伙伴能申请试用哦。