使用Python Tesseract提取图片文本时始终返回结果‘1’的问题
解决Tesseract提取图片文本始终返回“1”的问题
先修正代码中的明显错误
你的测试代码存在两处导入和路径相关的问题,先修改后再测试:
# Pillow的正确导入方式是PIL而非pillow from PIL import Image # 移除多余的tesseract导入,避免与pytesseract产生冲突 import pytesseract, re # 定义Tesseract程序路径 path_to_tesseract = r"C:\Program Files\Tesseract-OCR\tesseract.exe" # 建议使用绝对路径指定图片,避免相对路径定位错误 path_to_image = r"C:\你的完整路径\images\sampletext1-ocr-539x450.png" # 绑定Tesseract程序路径 pytesseract.tesseract_cmd = path_to_tesseract # 打开图片 img = Image.open(path_to_image) # 提取文本 text = pytesseract.image_to_string(img) print(text)
后续排查步骤
- 验证Tesseract本体功能:直接在命令行执行
"C:\Program Files\Tesseract-OCR\tesseract.exe" 你的图片绝对路径 output.txt,打开生成的output.txt查看结果。如果这里也返回“1”,说明Tesseract安装损坏或语言包缺失,重新下载官方版本并勾选对应语言包安装。 - 确认图片有效性:用系统图片查看器确认图片能正常打开,且包含清晰可识别的文本。可以先用一张仅含简单英文(如“Test 123”)的图片做测试。
- 更新依赖库:执行
pip install --upgrade pytesseract pillow,确保所有依赖为最新版本。 - 检查权限:确保脚本有读取图片文件和访问Tesseract程序的权限,避免因权限不足导致识别异常。
内容的提问来源于stack exchange,提问作者Devinath S
相关产品推荐
相关产品推荐

