美文网首页
Python 验证码识别

Python 验证码识别

作者: chacvoo | 来源:发表于2017-11-08 17:23 被阅读0次

这里会用到

安装

下载安装 tesseract

安装pytesseract  和  Pillow

pip install pytesseract

pip install Pillow

这里只说winsows系统下的安装linux,在利用pytesseract调用tesseract时遇到以下错误:

FileNotFoundError: [WinError 2] 系统找不到指定的文件。

于是我看了下pytesseract源码,发现有这样的一行

# CHANGE THIS IF TESSERACT IS NOT IN YOUR PATH, OR IS NAMED DIFFERENTLY

tesseract_cmd = 'tesseract'

估计windows系统要手工添加环境变量,所以才产生的问题,于是又将tesseract添加到环境变量Path中,但还是会报错:

pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\eng.traineddata')

这个是eng.traineddata文件路径有误才会出现的错误。

解决办法:

先查看tesseract有没有这个语言包,有CMD中输入命令:

tesseract --list-langs

结果:

List of available languages (2):

eng

osd

然后再查看然后再google下的,发现还是tesseract的环境变量的问题,找到了下面这一句话

Please make sure the TESSDATA_PREFIX environment variableisset to the parent directory of your"tessdata"directory.

于是新建的一个TESSDATA_PREFIX指定"tessdata"的上级目录也就是"C:\Program Files (x86)\Tesseract-OCR"

windows的安装也完成。

先用一个简单的验证码测试一下:

from PIL import Image

import pytesseract

result = pytesseract.image_to_string(Image.open(r'F:\pachong\PIN\PIN_ws\692.jpg',"r"), lang='eng')

print(result)

相关文章

网友评论

      本文标题:Python 验证码识别

      本文链接:https://www.haomeiwen.com/subject/zzeymxtx.html