Pytesseract配置后报错求助:文件未找到及语言包加载失败
解决Pytesseract运行时的两个常见错误
我来帮你一步步排查和解决这两个问题:
第一个错误:FileNotFoundError: [WinError 2]
你代码里的tesseract_cmd路径存在转义问题!Windows系统中反斜杠\是转义字符,比如你写的'F:\Tesseract-OCR\tesseract.exe'里,\t会被解析成制表符,导致系统识别的路径和你实际的安装路径不符,自然找不到文件。
修改成以下两种写法之一即可:
# 方法1:使用原始字符串(推荐,避免转义问题) pytesseract.pytesseract.tesseract_cmd = r'F:\Tesseract-OCR\tesseract.exe' # 方法2:用双反斜杠手动转义 pytesseract.pytesseract.tesseract_cmd = 'F:\\Tesseract-OCR\\tesseract.exe'
第二个错误:语言包加载失败
你设置的TESSDATA_PREFIX环境变量路径错误!错误提示明确要求:这个变量要指向tessdata目录的父目录,也就是F:\Tesseract-OCR,而不是你现在设置的F:\Tesseract-OCR\tessdata——tesseract会自动在父目录下寻找tessdata文件夹里的语言包。
解决步骤:
- 打开系统环境变量设置,将
TESSDATA_PREFIX的值修改为F:\Tesseract-OCR - 完全关闭Jupyter Notebook和Anaconda Prompt,再重新打开(新环境变量需要重启程序才能生效)
- 如果重启后还是不行,可以在代码里临时设置环境变量(优先于系统变量生效):
import os os.environ['TESSDATA_PREFIX'] = r'F:\Tesseract-OCR'
最后确认F:\Tesseract-OCR\tessdata目录下确实存在english.traineddata文件,要是缺失的话,重新安装Tesseract时记得勾选英文语言包,或者直接把对应语言包文件放到这个目录里。
内容的提问来源于stack exchange,提问作者SrihariRaghu
相关产品推荐
相关产品推荐

