当模拟登陆遇到验证码

                       

前言

这两天在看相关于模拟登录的案例,不可避免的遇到了一些验证码相关的问题,在此之前一直使用的是将验证码下载到本地,然后人工肉眼识别的方式。但是效果可想而知,精确度倒是还可以,然而却变得不是很智能了。于是今天来学习一下如何自动识别验证码。

环境

我的实验环境为:

  • Python3.6
  • Pycharm2016.2 Professional
  • Tesseract-OCR-3.0
  • Windows 10 64位

在开始之前确保安装了tesseract引擎,然后是pytesseract这个第三方库。

如果没有安装其实也是可以使用的,那就是借助Python调用系统命令的方式来实现将验证码图片中的内容读入到文本文件,在通过代码读取文本文件得到验证码内容。 但是pytesseract使得这样的一个过程更加简便,所以没有安装的话还是建议安装一下。

pip install pytesseract
  
  
  
  • 1

读取图片的时候需要PIL库的支持,没有安装的话还是建议先安装一下,否则程序无法进行下去的。

实施

简易示例

import pytesseractfrom PIL import Imageimage = Image.open(r'checkcode.gif', mode='r')vcode = pytesseract.image_to_string(image)print(vcode)
  
  
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

结果为:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值