自动识别验证码
刚看完 《Python编程快速上手 让繁琐工作自动化》,受益匪浅,顺手做了一个小工具,能自动从远程服务器上下载文件到U盘,现在看《Python 3网络爬虫开发实战》,给大家分享一下使用tesserocr自动识别验证码
安装
- windows下载安装tesseract,注意版本问题,tesseract要和稍后安装的tesserocr 版本匹配,我的版本是tesserocr v2.4.0 (tesseract 4.0.0)
https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w32-setup-v4.0.0.20181030.exe
安装注意勾选 Additional language data来安装OCR识别支持的语言包
- 安装 tesserocr v2.4.0
tesserocr v2.4.0 - Python 3.7 - 64bit 下载地址
命令行 $ pip install tesserocr-2.4.0-cp37-cp37m-win_amd64.whl
验证安装结果
- 为了方便,我把 路径 C:\Program Files (x86)\Tesseract-OCR 加入环境变量
- 在命令行输入 tesseract img.PNG result -l eng && cat result.txt,可以看到测试图片的识别结果生成了
代码实现
-
由于我使用的是Anaconda的Jupyter,报错找不到tessdata,我特意把 C:\Program Files (x86)\Tesseract-OCR\tessdata 文件夹拷贝到C:\ProgramData\Anaconda3