- 正常安装pytesseract时没有任何问题的,但是在真正使用的时候就会报错:
pytesseract.pytesseract.TesseractNotFoundError: tesseract.exe is not installed or it's not in your PATH
pytesseract未安装或者不在指定路径,百度了一大堆,说什么要添加路径:
tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
但实际上你需要先下载Tesseract-OCR,我这里给出windows下各版本的下载链接(【注意】要3.0以上才支持中文):
https://digi.bib.uni-mannheim.de/tesseract/
然后我们在pytesseract.py文件中添加路径,这个文件在你的python安装目录下的:\Lib\site-packages\pytesseract 目录下
- 第二个BUG出来了:
pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\eng.traineddata Please make sure the TESSDATA_PREFIX environment variable is set to your "tessdata" directory. Failed loading language \'eng\' Tesseract couldn\'t load any languages! Could not initialize tesseract.')
这里给出最后的解决方法:
在你的运行代码中,先加上这两段代码:
pytesseract.pytesseract.tesseract_cmd = 'c://Program Files (x86)//Tesseract-OCR//tesseract.exe'
tessdata_dir_config = '--tessdata-dir "c://Program Files (x86)//Tesseract-OCR//tessdata"'
手动指定路径。然后在使用pytesseract.image_to_string()方法的时候在指定配置:
pytesseract.image_to_string(im, lang ='eng', config=tessdata_dir_config)
给出完整代码:
import pytesseract
from PIL import Image
pytesseract.pytesseract.tesseract_cmd = 'c://Program Files (x86)//Tesseract-OCR//tesseract.exe'
tessdata_dir_config = '--tessdata-dir "c://Program Files (x86)//Tesseract-OCR//tessdata"'
im = Image.open('./ccc.png')
print(pytesseract.image_to_string(im, lang ='eng', config=tessdata_dir_config))
运行之后:
虽然并没有正确识别出来,但至少没有报错