普通验证码容错思路

验证码是这个样子的

普通验证码容错思路

特点是,4 位数字字母。

验证码容错

以下是验证码部分的容错浏览预览图:

普通验证码容错思路

分解一:最多尝试 5 次

普通验证码容错思路

先用个 try 起头;

黄框部分是异常处理,弹框 + 返回错误;

绿框部分的 while 循环起,但设置变量中的i累加 5 次后,关闭登录窗口,中止循环。如红框的if蓝框的关闭窗口,意思是:当验证码识别错误后,反复识别,但超过 5 次后退出关闭窗口;

右下角框部分是点击一次刷新验证码,鼠标点到验证码框,获取验证码截图,再识别验证码,并得到验证码;

分解二:判断验证码

普通验证码容错思路

拿到验证码后,进入首次判断,if条件是判断验证码是不是 4 位;

如果不是 4 位(有时会识别出 3 位),红框部分 直接continue跳过此次循环再来一次;

如果正好是 4 位,挂个try

绿框部分: 把验证码输入,并点登录,如果成功跳转,拾取跳转后页面中的一个“标识字符”,进一步验证这个标识字符是否拾取到。

分解三:容错判断

普通验证码容错思路

if来判断这个“标识字符”,如果在跳转页拾取到,代表登录成功,return 一个成功;如果没有拾取到,很可能是验证码错了,拾取登录页面的错误提示,find 提示中的前几个字 “登录失败”,用消息框把提示弹出(可进一步容错也可以不要,因为验证码识别率挺高了,出错大概率是识别错了,不太可能是其他原因,所以这里也不用拾取错误提示),再 continue

============

欢迎拍砖,批评指正。