Python 3.6 版本 Pytesseract 图像验证码识别 PyCharm 报错FileNotFoundErro
Python 3.6 版本 Pytesseract 图像验证码识别
本文首先先说下问题,在代码中引入Pytesseract块时,总是出现错误
程序代码很简单如下:
from PIL import Image
import pytesseract
text = pytesseract.image_to_string(Image.open("pic.gif"))
print(text)
结果呢,肯定是报错,而且这个错误死活过不去
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] 系统找不到指定的文件。
面解决问题,你所需要的准备工作,Window下图像识别想用Python处理的
真的是跳了所有的坑,不管是中文****的解释还是StackOverflow英文上面的,首先要确保:
1、安装Pillow,命令pip install Pillow,安装完毕会在Python文件夹下Lib\site-packages\pytesseract这个文件夹,里面有pytesseract.py文件
2、确保,确保,确保 安装了 Tesseract-OCR 这个好像没有64、32的区别
本人Python用的64位,安装这个OCR时候,看到用的是32位版本的最后没问题,安装后,自动生成环境变量(不生成重新配置一下),查看自己环境变量里是否有tesseract的路径
3、如果如果上两步你完成了,那么你可以找一个图片测试了,cmd中输入tesseract,会出现下面提示,就没问题了
4、你甚至可以在D盘找一个图片,然后测试一下这个工具强大的功能,比如识别一个验证码图片上的数字,图片路径为D:/pic.gif
测试图片如下
5、在cmd命令中输入命令 tesseract d:/pic.gif result
什么意思呢?就是将当前图片识别出的结果,放到result.txt文件中,路径是当前路径,结果完美,没问题!!!
以上都说明没问题啊,但是但是问题来了,我在Pycharm中为什么就一直执行失败,
因为pychrom 有自己的cmd cmd 这个东西不重启不生效。重启下Pycharm就好了