使用pytesseract的一些坑,弄了好长时间,分享下:
File "D:\Program Files\Python36\lib\site-packages\pytesseract\pytesseract.py", line 46, in run_tesseract
proc = subprocess.Popen(command, stderr=subprocess.PIPE)
File "D:\Program Files\Python36\lib\subprocess.py", line 707, in __init__
restore_signals, start_new_session)
File "D:\Program Files\Python36\lib\subprocess.py", line 992, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
————————————————
##没有安装tesseract-ocr
##等等一些问题,其他问题没有截图,下面是下载安装使用pytesseract全部的流程,按步骤走,应该没问题:
在这里下载对应的windows版本,
然后安装。再将安装目录复制到
在python中安装pytesseract,打开pytesseract.py 源文件,将刚才安装的安装目录复制到tesseract_cmd,也就是这个地方
这个是系统的默认安装路经,注意斜杠,不能是反斜杠,因为\t会转义,导致找不到文件。
然后在配置环境变量TESSDATA_PREFIX,路径是C:\Program Files\Tesseract-OCR\tessdata,
注意这里后面一定要有tessdata,这个是训练集,识别图片时候需要这个文件,不加会找不到。
配置好环境变量后,重启idea,最后运行程序,应该不会报错了。
import pytesseract
from PIL import Image, ImageEnhance
imageCode = Image.open("1.jpg") # 图像增强,二值化
# imageCode.load()
sharp_img = ImageEnhance.Contrast(imageCode).enhance(2.0)
sharp_img.save("8.jpg")
sharp_img.load() # 对比度增强
# print(sharp_img.show())
# tessdata_dir_config ="C:\\Program Files\\Tesseract-OCR\\tessdata"
code = pytesseract.image_to_string(sharp_img).strip()
# 5、收到验证码,进行输入验证
print(code)
这个是要识别的图片。
最后输出结果:
卒。