当前位置: 首页 > 面试题库 >

pytesseract找不到指定的文件

范承教
2023-03-14
问题内容

我的代码简单明了,如下所示:

import pytesseract
from PIL import Image

img = Image.open('C:/temp/foo.jpg')
img.load()
i = pytesseract.image_to_string(img)

我得到的错误响应是:

Traceback (most recent call last):
  File "img.py", line 6, in <module>
    i = pytesseract.image_to_string(img)
  File "build\bdist.win32\egg\pytesseract\pytesseract.py", line 161, in image_to
_string
  File "build\bdist.win32\egg\pytesseract\pytesseract.py", line 94, in run_tesse
ract
  File "C:\Users\%USER%\AppData\Local\Continuum\Anaconda\lib\subprocess.py",
line 710, in __init__
    errread, errwrite)
  File "C:\Users\%USER%\AppData\Local\Continuum\Anaconda\lib\subprocess.py",
line 958, in _execute_child
    startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

任何指导都是太棒了。

将tesseract添加到我的path变量中有助于: C:\Program Files (x86)\Tesseract-OCR

但是,现在尝试运行pytesseract部分时,代码崩溃了。


问题答案:

只需遇到相同的错误,然后决定回答这个问题-可能会帮助某人节省时间…

首先,确保已安装/复制了Tesseract-OCR可执行文件。

Windowstesseract在您的PATH环境变量中指定的目录中找不到可执行文件。因此,请确保包含该目录的tesseract位置位于您的PATH变量中,或者确保tesseract_cmd您的Python脚本中的覆盖变量如下所示(改为放置PATH):

import pytesseract

pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract'

除此之外,确保将TESSDATA_PREFIX Windows 环境变量设置为包含tessdata目录的目录。例如:

TESSDATA_PREFIX=C:\Program Files (x86)\Tesseract-OCR

如果tessdata位置是:C:\Program Files (x86)\Tesseract-OCR\tessdata



 类似资料:
  • } 当我运行这段代码时(我使用的是Eclipse),我得到了堆栈跟踪: JAVA木卫一。IOException:无法运行程序“python”:CreateProcess error=2,系统找不到java指定的文件。lang.ProcessBuilder。在运行测试时启动(ProcessBuilder.java:1048)。main(RunTest.java:11)由:java引起。木卫一。IOE

  • 问题内容: 我有一个名为 的文件。 它与我的文件位于同一目录中。 但是,当我尝试通过以下代码访问它时,找不到此文件,发生错误: 这是我的代码: 问题答案: 直接将word.txt作为项目根文件夹的子级和src的对等方放置 免责声明:我想解释一下为什么这种方法适用于这种特殊情况,以及为什么它可能不适用于其他情况。 工作原理: 使用或任何其他变体时,你正在文件系统上相对于“工作目录”查找文件。工作目录

  • 问题内容: 我收到以下错误 但我可以肯定地说,我已经在src,bin和根目录下创建了一个in.txt文件。我还尝试在主要参数中指定完整目录,但仍然无法正常工作。为什么Eclipse不选择它? 问题答案: 我获取了您的代码,并使用以下命令行参数执行了该代码: 它完全没有问题。检查您的命令行。

  • 问题内容: 我正在制作一个打开并读取文件的程序。这是我的代码: 但是当我跑步时,出现以下错误: 我和位于同一目录中的以下位置: 我想知道我在做什么错? 问题答案: 我已经复制了您的代码,并且运行正常。 我怀疑您在hello.txt的实际文件名中仅存在一些问题,或者您在错误的目录中运行。考虑通过@ Eng.Fouad建议的方法进行验证

  • 我有一个名为""的文件。 它与我的< code>java文件在同一个目录中。 但是,当我尝试在以下代码中访问它时,会发生此文件未找到错误: 这是我的代码:

  • 我是编程新手。我最近尝试下载开源软件的源代码并设置环境。但是,当我第一次尝试运行构建时,我看到以下问题: 执行失败:Java . io . io异常:无法运行程序“unzip”(在目录中)....\"): CreateProcess error=2,系统找不到java.lang.ProcessBuilder.start中指定的文件 有什么解决这个问题的技巧吗? 据我所知,它无法成为文件: 在哪里查