如何解决 TesseractNotFoundError?
- 2025-03-14 08:57:00
- admin 原创
- 66
问题描述:
我尝试在 Python 中使用 pytesseract,但总是出现以下错误:
raise TesseractNotFoundError()
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your path
但是,我的系统上安装了 pytesseract 和 Tesseract。
产生此错误的示例代码:
import cv2
import pytesseract
img = cv2.imread('1d.png')
print(pytesseract.image_to_string(img))
我该如何解决这个 TesseractNotFoundError?
解决方案 1:
我收到此错误是因为我安装了pytesseract
但pip
忘记安装二进制文件。
在 Linux 上
sudo apt update
sudo apt install tesseract-ocr
sudo apt install libtesseract-dev
在 Mac 上
brew install tesseract
在 Windows 上
从https://github.com/UB-Mannheim/tesseract/wiki下载二进制文件。然后添加pytesseract.pytesseract.tesseract_cmd = 'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
到你的脚本中。(如有必要,请替换 tesseract 二进制文件的路径)
参考文献:
https://pypi.org/project/pytesseract/(安装部分)和
https://github.com/tesseract-ocr/tesseract/wiki#installation
解决方案 2:
我尝试像其他人提到的那样添加到路径变量中,但仍然收到相同的错误。有效的是将其添加到我的脚本中:
pytesseract.pytesseract.tesseract_cmd = r“C:\Program Files (x86)\Tesseract-OCR\tesseract.exe”
解决方案 3:
您的机器可能缺少tesseract-ocr
此文件。在此处查看安装说明:https://github.com/tesseract-ocr/tesseract/wiki
在 Mac 上,你可以使用 homebrew 安装:
brew install tesseract
之后就可以正常运行了
解决方案 4:
我在 Mac OS 上运行并使用 brew 安装了 tesseract,因此我对此的看法如下。由于 pytesseract 只是您从 python 访问 tesseract 的方式,因此您必须指定 tesseract 在您的计算机上的现有位置。
对于Mac OS
尝试找到 tesseract.exe 的位置 - 如果您使用
brew安装了它,请在终端上使用:
>brew list tesseract
这应该会列出 tesseract.exe 的位置,大致如下
> /usr/local/Cellar/tesseract/3.05.02/bin/tesseract
然后按照他们的指示:
pytesseract.pytesseract.tesseract_cmd = r'<full_path_to_your_tesseract_executable>'
pytesseract.pytesseract.tesseract_cmd = r'/usr/local/Cellar/tesseract/3.05.02/bin/tesseract'
应该可以解决问题!
解决方案 5:
在Windows 10操作系统环境下,以下方法对我有用:
https://github.com/tesseract-ocr/tesseract/wiki
下载 tesseract 并安装。Windows 版本可在此处获取:
https://github.com/UB-Mannheim/tesseract/wiki
找到脚本文件
pytesseract.py
并C:UsersUserAnaconda3Libsite-packagespytesseract
打开。将以下代码从 更改为tesseract_cmd = 'tesseract'
:tesseract_cmd = 'D:/Program Files (x86)/Tesseract-OCR/tesseract.exe'
您可能还需要添加环境变量
D:/Program Files (x86)/Tesseract-OCR/
希望它对你有用!
解决方案 6:
注意:仅适用于 Windows
我今天遇到了这个问题,这里提到的所有答案都对我有帮助,但我个人必须深入挖掘才能解决它。因此,让我以一种非常简单的形式给出解决方案来帮助所有人:
从这里下载可执行文件 64 位(如果您的计算机是 32 位,则下载 32 位)exe 。
(文件的名称为 tesseract-ocr-w64-setup-v5.0.0.20190526 (alpha))
安装它。让它自行安装在默认的 C 目录中。
现在转到您的环境变量(只需在开始菜单中搜索或转到即可到达那里
Control Panel > System > Advanced System Settings > Environment Variables
)
a) 选择 PATH 然后编辑它。单击 NEW 并添加安装路径(通常C:Program FilesTesseract-OCR
)
现在您将不会收到错误!
解决方案 7:
对于Mac:
安装 Pytesseract ( pip install pytesseract应该可以工作)
安装 Tesseract但只能使用 homebrew,pip 安装不知何故不起作用。(brew install tesseract)
获取设备上 Tesseract 的 brew 安装路径(brew list tesseract)
将路径添加到代码中,而不是系统路径中。路径将与代码一起添加,使用 pytesseract.pytesseract.tesseract_cmd = '<path received in step 3>' - (例如pytesseract.pytesseract.tesseract_cmd = '/usr/local/Cellar/tesseract/4.0.0_1/bin/tesseract')
这应该可以正常工作。
解决方案 8:
在 Jupyter Notebook 中对我来说实际上有用的一个简单方法是在 pytesseract.pytesseract.tesseract_cmd 路径中使用双反斜杠而不是单个反斜杠:
pytesseract.pytesseract.tesseract_cmd = 'C:\\Program Files (x86)\\Tesseract-OCR\\tesseract.exe'
解决方案 9:
我遇到了同样的问题。我只使用这个命令就可以了。
sudo apt install tesseract-ocr
请注意,这只在 Ubuntu 上有效。
sudo
是 Unix 独有的命令(Linux、Mac、Rasbian 等),而apt
Ubuntu 特定。
解决方案 10:
我遇到了同样的问题。我希望您已经从这里安装了并且也完成了pip install pytesseract
。
如果一切顺利,您应该会看到该路径C:Program Files (x86)Tesseract-OCR where tesseract.exe
可用。
添加 Path 变量对我没有帮助,实际上我tesseract
在环境变量中添加了名为 的新变量,其值为C:Program Files (x86)Tesseract-OCR esseract.exe
。
tesseract
现在,在命令行中输入应该可以正常工作,它会向您提供使用信息。您现在可以pytesseract
这样使用(运行此命令之前,不要忘记重新启动 Python 内核!):
import pytesseract
from PIL import Image
value=Image.open("text_image.png")
text = pytesseract.image_to_string(value, config='')
print("text present in images:",text)
享受!
解决方案 11:
当我尝试使用 pytesseract 制作文本提取器时,我也遇到了同样的错误,但解决方案就 在 pypi 站点中pytesseract的安装说明中: pytesseract
有很多替代方法可以避免该错误,但是,在方法pytesseract.image_to_string中添加一个参数可以帮我解决这个问题,例如
tessdata_dir_config = "/usr/share/tesseract-ocr/4.00/tessdata"
output = pytesseract.image_to_string(image, lang='eng', config=tessdata_dir_config)
解决方案 12:
以下三个命令将完成必要的操作:
sudo apt update
# This will update your packages
sudo apt install tesseract-ocr
# This will install OCR
sudo apt install libtesseract-dev
# This will add it as development dependency
解决方案 13:
您可以使用以下链接下载 tesseract-ocr 安装程序,
适用于 Windows 的 Tesseract
然后在环境变量中添加名为 tesseract 的新变量,其值为 C:\Program Files (x86)\Tesseract-OCR\tesseract.exe
解决方案 14:
从https://github.com/UB-Mannheim/tesseract/wiki安装 tesseract ,并将 tesseract.exe 的路径添加到Path环境变量中。
解决方案 15:
您很可能安装了不同版本的 Python,请确保安装的 Tesseract 是相同的 Python 版本。
which pip3
显示 pip3 安装的路径,并which python3
显示相应的 Python 安装路径。
确保这两个是相同的。
解决方案 16:
当当前目录与安装 tesseract 的驱动器不同时,在 Windows 下会出现这种情况(至少在 tesseract 版本 3.05 中)。
tesseract 中的某些东西要求数据文件位于 \Program Files...(而不是 C:\Program Files)。因此,如果您与 tesseract 不在同一个驱动器号上,它将失败。如果我们可以在执行 tesseract 之前临时将驱动器(仅在 Windows 下)更改为 tesseract 安装驱动器,然后再改回来,那就太好了。您的情况示例:您可以将 yourmodule_python.py 复制到“C/Program Files (x86)/Tesseract-OCR/”并运行!
解决方案 17:
设置路径有几个步骤
1:转到这个“ https://github.com/UB-Mannheim/tesseract/wiki ”
2:下载最新的安装程序
3:安装
4:在系统变量中设置路径,例如“C:\Program Files\Tesseract-OCR”或“C:\ProgramFiles (x86)\Tesseract-OCR”
5:打开 CMD 输入“tesseract”和一些输出,除了“未识别类型错误”
解决方案 18:
在 Ubuntu 上使用 flask webframework 应该可以正常工作
pytesseract.pytesseract.tesseract_cmd = r"/usr/bin/tesseract"
img = Image.open(picture_name)
print(pytesseract.image_to_string(img))
解决方案 19:
我改变了我的路径:
path_to_tesseract = 'C:Program FilesTesseract-OCR esseract.exe'
to
path_to_tesseract = r'C:/Program Files/Tesseract-OCR/tesseract.exe'
问题已为我解决
解决方案 20:
您是否正在进口
from tesseract import image_to_string
不要从 pytesseract 导入
解决方案 21:
我也遇到了同样的问题,只需将其添加C:Program Files (x86)Tesseract-OCR
到路径变量中即可。如果仍然不起作用,请C:Program Files (x86)Tesseract-OCR essdata
在新行中将其添加到路径变量中。添加路径变量后,不要忘记重新启动计算机。
解决方案 22:
我目前正在使用 Windows,需要开发 PDF 解析器,但仅通过添加新环境变量sysdm.cpl
不起作用。对于其他 Windows 用户,我强烈建议也将其添加C:Program Files (x86)Tesseract-OCR
到您的profile.ps1
环境中(如果使用 Powershell)。
解决方案 23:
小错误——我知道我必须打开/关闭我的 cmd 才能反映更新的路径。使用 Jupyter Notebook 时,我必须关闭客户端并重新初始化它。
解决方案 24:
如果你使用的是 Linux,只需运行这些命令,
sudo apt update
sudo apt install tesseract-ocr
sudo apt install libtesseract-dev
然后运行这个,
python -m pip install tesseract tesseract-ocr pytesseract
解决方案 25:
对我来说它通过放置单引号起作用
pytesseract.pytesseract.tesseract_cmd =r'C:/Program Files/Tesseract-OCR/tesseract.exe'
实际上放在双引号内会自动插入不需要的字符
解决方案 26:
这是我的道路
pytesseract.pytesseract.tesseract_cmd = r"C:Program FilesTesseract-OCR esseract.exe" # your path may be different
扫码咨询,免费领取项目管理大礼包!