我试图运行这个python代码,但它不断抛出相同的错误。我在Windows机器上使用pytesseract(在pycharm中编码)来扫描图像。我在cloud9上创建了一个项目,它在亚马逊网络服务中使用了pytesseract,一切正常,我确信这是一个Windows问题。这都是在python 2.7中(这是我在一个更大的项目中调试同样问题的一个小测试程序)
这是我的代码:
try:
import Image
except ImportError:
from PIL import Image
import pytesseract
filename = "Z:\Pycharm Projects\IBM-Waldon-master\screenshots\image.png"
print pytesseract.image_to_string(Image.open(filename))
我已尝试将代码的内容设为函数并重新启动计算机,但它仍然会抛出此错误:
Z:\Python27\interpeter\Scripts\python.exe "Z:/Pycharm Projects/IBM-Waldon-
master/testest.py"
Traceback (most recent call last):
File "Z:/Pycharm Projects/IBM-Waldon-master/testest.py", line 9, in <module>
print pytesseract.image_to_string(Image.open(filename))
File "Z:\Python27\interpeter\lib\site-packages\pytesseract\pytesseract.py", line 193, in image_to_string
return run_and_get_output(image, 'txt', lang, config, nice)
File "Z:\Python27\interpeter\lib\site-packages\pytesseract\pytesseract.py", line 140, in run_and_get_output
run_tesseract(**kwargs)
File "Z:\Python27\interpeter\lib\site-packages\pytesseract\pytesseract.py", line 111, in run_tesseract
proc = subprocess.Popen(command, stderr=subprocess.PIPE)
File "Z:\Python27\Lib\subprocess.py", line 394, in __init__
errread, errwrite)
File "Z:\Python27\Lib\subprocess.py", line 644, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
Process finished with exit code 1
答案 0 :(得分:0)
在Windows上,PIL使用注册的任何程序打开临时.BMP文件。程序返回时,临时文件将被删除。
到目前为止,最常见的问题是程序甚至在打开文件之前就会发回返回代码,并且文件会在打开之前被删除。不幸的是,Windows Vista和7中的默认查看器存在此问题; XP使用了Microsoft图像和传真查看器,这很好。
您可以使用文件资源管理器更改与.BMP文件关联的程序。