windows下pytesseract识别验证码遇到的WindowsError: [Error 2] 的解决方法

原创 2016年08月29日 10:25:30

安装PIL+pytesseract
安装很简单,参考http://www.waitalone.cn/python-php-ocr.html

从http://www.lfd.uci.edu/~gohlke/pythonlibs/里面下载pillow选择自己的版本即可, 我是2.7,然而这里有个问题,明明我机子是64位的,我下载了64位的whl然后pip安装的时候居然报错了,说格式不支持,然后我就去下载32位了,居然特么的安装上了。算了....


然后

pip install pytesseract

安装成功后执行脚本:


from PIL import Image
from pytesseract import image_to_string
image = Image.open(r'7364.png')  # Open image object using PIL

<pre name="code" class="python"><pre name="code" class="plain">报错,错误如下:

Traceback (most recent call last):
  File "F:/spider/test.py", line 4, in <module>
    print image_to_string(image)     # Run tesseract.exe on image  
  File "C:\Users\tandazhao\spider_venv\lib\site-packages\pytesseract\pytesseract.py", line 161, in image_to_string
    config=config)
  File "C:\Users\tandazhao\spider_venv\lib\site-packages\pytesseract\pytesseract.py", line 94, in run_tesseract
    stderr=subprocess.PIPE)
  File "C:\Python27\Lib\subprocess.py", line 711, in __init__
    errread, errwrite)
  File "C:\Python27\Lib\subprocess.py", line 959, in _execute_child
    startupinfo)
WindowsError: [Error 2] 

print image_to_string(image) # Run tesseract.exe on image

上网找解决方法,说是pytesseract.py 里面的

tesseract_cmd = 'tesseract' 改成  tesseract_cmd = 'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'

好,我改

再次运行,嗯,再次报错

Traceback (most recent call last):
  File "F:/spider/test.py", line 4, in <module>
    print image_to_string(image)     # Run tesseract.exe on image  
  File "C:\Users\tandazhao\spider_venv\lib\site-packages\pytesseract\pytesseract.py", line 161, in image_to_string
    config=config)
  File "C:\Users\tandazhao\spider_venv\lib\site-packages\pytesseract\pytesseract.py", line 94, in run_tesseract
    stderr=subprocess.PIPE)
  File "C:\Python27\Lib\subprocess.py", line 711, in __init__
    errread, errwrite)
  File "C:\Python27\Lib\subprocess.py", line 959, in _execute_child
    startupinfo)
WindowsError: [Error 2] 

呵呵哒,仔细看命令,发现windows下\t转义了。。。。然后在tesseract_cmd = 'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'前面加个r,

tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'

执行,OK,识别出来了

C:\Users\tandazhao\spider_venv\Scripts\python.exe F:/spider/test.py
7364

Process finished with exit code 0


哈哈哈



版权声明:本文为博主原创文章,未经博主允许不得转载。

python windows安装使用tesseract中的问题解决(WindowsError: [Error 2])

windows安装使用tesseract中的问题解决(WindowsError: [Error 2]和IOError: [Errno 2] No such file or directory: 'te...

解决方案:WindowsError: [Error 2]

使用Python的rename()函数重命名文件时出现问题,提示 WindowsError: [Error 2] 错误,最初代码如下: def renameFile(filename): f...

Python——报错:WindowsError:[Error 1(...)](WindowsError错误码解释)

WindowsError的错误码解释: 0 操作成功完成. 1 功能错误. 2 系统找不到指定的文件. 3 系统找不到指定的路径. 4 系统无法打开文件. 5 拒绝访问. 6 句柄无效....

解决 WindowsError: [Error 87]

Traceback (most recent call last):   File "C:\Users\tomet\Desktop\a.py", line 10, in      b = webd...

Python pytesseract WinError 2

在使用 pytesseract中的image_to_string是报错如下: Python3.5版本,已经正确安装了Pillow和pytesseract模块,安装方法请百度,使用PyCharm也可以...

pytesseract Windows Error 6

今天测试了一下 pytesseract , 用来识别验证码, 结果出了点小问题, 记录如下.try: import Image except ImportError: from PIL...
  • huyoo
  • huyoo
  • 2015年08月11日 12:07
  • 5910

关于Python验证码识别安装PIL、tesseract-ocr与pytesseract模块的错误解决

0x00:用Python进行验证码识别 安装了 1、PIL 2、tesseract-ocr 3、pytesseract模块 报错 File "D:\P\Python\lib\subproces...

使用pytesseract出现错误:“[WinError 2] 系统找不到指定的文件

使用pytesseract出现错误:“[WinError 2] 系统找不到指定的文件

Python中的subprocess

看python的document 自个慢慢琢磨~~,每天花一点时间学习。某某人说要厚积薄发!先看看subprocess是干什么用的: The subprocess modul allows yo...

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

获取网页数据时,写好代码后出现了这个问题,测试后发现,只要使用b = Bowser()函数就会出现这个错误 原因没看懂 解决方案是 找到 subprocess.py脚本,将对应行加上shell=F...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:windows下pytesseract识别验证码遇到的WindowsError: [Error 2] 的解决方法
举报原因:
原因补充:

(最多只允许输入30个字)