Pyhthon爬虫其之验证码识别
背景 现在的登录系统几乎都是带验证手段的,至于验证的手段也是五花八门,当然用的最多的还是验证码。不过纯粹验证码识已经是很落后的东西了,现在比较多见的是滑动验证,滑动拼图验证(这个还能往里面加广告)、点击图片特定位置确认(同样能放广告),再或者谷歌的No-CAPTCHA。总之纯粹的验证码效果不好,成本也不如一众新型验证码,迟早是要被全部淘汰的,但现在仍然有很多地方在使用传统的图片验证码。所以提到自动模拟登录,验证码识别肯定也是需要进行研究的。 思路 由于我此前并没有接触过验证码识别的相关知识,所以在开工前在网上查找了大量的资料,个人觉得对我最有帮助的三篇附在文章最后。 在翻阅了大量的博客、文章后我采用的识别方法为pytesser中的image_to_string函数。 起先是打算按照某篇文章的介绍,使用libSVM进行人工网络识别,但在完成了图片处理后,我发现使用pytesser进行识别的成功率已经达到了8成以上,便没有继续研究下去(因为我懒…) 验证码是别的流程大概是这样的: 1. 获取验证码图片 2. 二值化图片(使图片只有黑白两种像素) 3. 去噪、去干扰线 4. 修正扭曲、变形 5. 分割字符(视识别手段而定) 6. 识别 其中的去噪和修正并没有严格的先后顺序,怎么办效果好就怎么办。 由于我校教务处的验证码没有扭曲变形