Pytesseract没有这样的文件或目录错误

Ham*_*vus 5 python text tesseract image pycharm

首先,我做了这里提到的所有pytesseract-没有这样的文件或目录错误

仍然无法正常工作.现在我正在使用Pycharm IDE以下代码:

from PIL import Image
import pytesseract
import subprocess

im = Image.open('test.png')
im.show()
subprocess.call(['tesseract','test.png','out'])
print pytesseract.image_to_string(Image.open('test.png'))
Run Code Online (Sandbox Code Playgroud)
  • im.show()成功打开图像.
  • subprocess.call()与tesseract test.png out也从图像中提取文本..
  • 但是pytesseract.image_to_string()失败了.

我不明白.为什么我能在shell中使用tesseract而不能在python中使用tesseract.在python中我可以打开相同的图像但是当与tesseract一起使用时无法找到图像.

您可以在下面看到错误输出.

 File "/home/hamza-c/Schreibtisch/Android/JioShare/orc.py", line 7, in <module>
    print pytesseract.image_to_string(Image.open('/home/hamza-c/Schreibtisch/Android/JioShare/test.png'))
  File "/usr/local/lib/python2.7/dist-packages/pytesseract/pytesseract.py", line 162, in image_to_string
    config=config)
  File "/usr/local/lib/python2.7/dist-packages/pytesseract/pytesseract.py", line 95, in run_tesseract
    stderr=subprocess.PIPE)
  File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1340, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory
Run Code Online (Sandbox Code Playgroud)

jav*_*ved 5

我测试了你在问题中提到的代码.它工作正常.我遇到了同样的错误

找不到这样的文件或目录

问题是包含'tesseract.exe'的目录未添加到环境变量中.您应该能够在命令提示符下运行命令'tesseract'.

如果没有安装正方体你可以从这里下载的Tesseract 1:https://github.com/tesseract-ocr/tesseract/wiki和Windows使用可用第三方的安装位置


Ham*_*vus -6

我解决了我自己的问题。

im = Image.open('test.png')
print pytesseract.image_to_string(im)
Run Code Online (Sandbox Code Playgroud)

目前还不清楚为什么它在传递引用时起作用,但当我尝试打开参数内的图像时却不能直接起作用。