You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复Python图片转文本程序中的Tesseract路径相关错误?

解决Tesseract无法加载语言包的路径问题

从你的错误日志能直接定位到问题:Tesseract找不到英文训练数据文件eng.traineddata,核心原因是未正确设置TESSDATA_PREFIX环境变量——这个变量需要指向tessdata目录的父文件夹(也就是Tesseract的安装根目录)。

问题拆解

错误里的关键提示已经说得很明确:

Please make sure the TESSDATA_PREFIX environment variable is set to the parent directory of your "tessdata" directory. Failed loading language 'eng'

你的Tesseract安装在C:\Program Files (x86)\Tesseract-OCR,对应的tessdata目录就嵌套在这个路径下,所以TESSDATA_PREFIX必须指向这个根安装目录。

具体解决方案

方案1:在代码中临时设置(快速测试)

在Python代码里添加环境变量配置,放在导入pytesseract之后即可:

try:
    from PIL import Image
except ImportError:
    import Image
import pytesseract
import os

# 配置Tesseract命令路径
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
# 设置TESSDATA_PREFIX指向安装根目录
os.environ['TESSDATA_PREFIX'] = r'C:\Program Files (x86)\Tesseract-OCR'

# 注意图片路径前加r,避免转义字符解析错误
image1 = Image.open(r"C:\python\program\image.png")
# 显式指定语言参数,避免默认语言识别异常
print(pytesseract.image_to_string(image1, lang='eng'))

方案2:配置系统永久环境变量(推荐)

如果不想每次写代码都重复设置,可以在Windows系统中配置永久环境变量:

  • 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
  • 在「系统变量」区域点击「新建」:
    • 变量名:TESSDATA_PREFIX
    • 变量值:C:\Program Files (x86)\Tesseract-OCR
  • 保存后重启你的Python编辑器/终端,让环境变量生效。

额外验证步骤

确认C:\Program Files (x86)\Tesseract-OCR\tessdata目录下存在eng.traineddata文件。如果没有,要么重新安装Tesseract(安装时勾选英文语言包),要么下载对应训练数据放到该目录。

内容的提问来源于stack exchange,提问作者Mehul Jadav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.13 08:03:50