杰瑞科技汇

Python pytesser安装步骤是怎样的?

核心结论:不推荐在新项目中使用 pytesser

pytesser 是一个非常古老(大约2009年发布)且不再维护的库,它依赖一个过时的OCR引擎 Tesseract OCR v2.x,在现代系统上安装困难,识别准确率极低,功能也极其有限。

Python pytesser安装步骤是怎样的?-图1
(图片来源网络,侵删)

对于2025年及以后的新项目,强烈推荐使用以下替代方案:

  1. pytesseract + Tesseract OCR v5.x: 这是 pytesser 的现代、官方、功能强大的“精神续作”。pytesseract 是一个 Python 封装器,它调用最新的 Tesseract OCR v5.x 引擎,准确率和稳定性都远超 pytesser
  2. 基于深度学习的OCR库: 如 easyocrpaddleocr,它们在处理复杂场景、手写体、多语言等方面表现极其出色,是目前的主流选择。

pytesser 的安装(不推荐,仅作技术参考)

如果你因为某些特殊原因(例如维护一个老旧项目)必须安装 pytesser,可以按照以下步骤操作,这个过程可能会很曲折。

步骤 1: 安装 Tesseract OCR v2.x 引擎

pytesser 依赖特定版本的 Tesseract OCR v2.x,而不是目前主流的 v5.x,这是安装中最困难的一步。

在 Linux (Ubuntu/Debian) 上:

Python pytesser安装步骤是怎样的?-图2
(图片来源网络,侵删)
# 添加旧版本的软件源仓库
sudo apt-get update
sudo apt-get install -y software-properties-common
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
sudo apt-get update
# 安装 Tesseract OCR v2 (通常是 2.04 版本)
sudo apt-get install tesseract-ocr

在 macOS 上 (使用 Homebrew):

Homebrew 的默认源可能没有旧版本,你需要手动下载安装。

# 1. 下载旧版本的 Tesseract
# 你可以从这里找到: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/tesseract.rb
# 或者直接下载预编译的二进制文件(从 Tesseract 的官方历史版本页面)
# 2. 安装
# 假设你已经下载了 tesseract-2.0.0.tar.gz
tar -xvzf tesseract-2.0.0.tar.gz
cd tesseract-2.0.0
./configure
make
sudo make install

在 Windows 上:

这是最麻烦的,你需要从 Tesseract OCR 的历史版本页面(Tesseract 3.02.02 是一个比较旧的稳定版,但比v2新,可能能工作)下载旧版本的安装程序(.exe 文件)。

Python pytesser安装步骤是怎样的?-图3
(图片来源网络,侵删)
  1. 下载安装程序。
  2. 运行安装,记住安装路径C:\Program Files (x86)\Tesseract-OCR
  3. 在安装过程中,确保勾选了 "Add to PATH" 选项,否则后续会很麻烦。

步骤 2: 安装 Python 依赖

pip install pytesser

注意: pytesser 的依赖 PIL 已经被 Pillow 替代,如果遇到 ImportError,你需要安装 Pillow

pip install Pillow

步骤 3: 验证安装

创建一个简单的 Python 脚本,尝试导入并使用。

# test_pytesser.py
from pytesser import *
try:
    # 你需要一张名为 "test.png" 的图片
    # 从这里下载一张测试图片: https://i.stack.imgur.com/8o2gM.png
    image = Image.open('test.png')
    text = image_to_string(image)
    print("识别结果:", text)
except ImportError as e:
    print(f"导入错误: {e}")
    print("请确保 Tesseract OCR 已正确安装并添加到系统环境变量 PATH 中。")
except Exception as e:
    print(f"发生错误: {e}")

运行脚本:

python test_pytesser.py

如果一切顺利,它会输出识别到的文本,但很大概率会遇到各种路径、版本不兼容等问题。


现代替代方案:pytesseract + Tesseract OCR v5.x (强烈推荐)

这是最接近 pytesser 原始思路的正确升级路径。

安装 Tesseract OCR v5.x 引擎

在 Linux (Ubuntu/Debian) 上:

sudo apt-get update
sudo apt-get install tesseract-ocr
# 如果需要识别中文,请安装中文语言包
sudo apt-get install tesseract-ocr-chi-sim  # 简体中文
sudo apt-get install tesseract-ocr-chi-tra  # 繁体中文

在 macOS 上 (使用 Homebrew):

brew install tesseract
# 安装中文语言包
brew install tesseract-lang # 这会安装一个包含多种语言的包,包括中文

在 Windows 上:

  1. 访问 Tesseract at UB Mannheim 下载最新的稳定版安装程序。
  2. 运行安装程序,记住安装路径C:\Program Files\Tesseract-OCR
  3. 重要: 在安装过程中,勾选 "Additional language data" 并选择你需要的语言包(如 chi_sim 简体中文)。
  4. 确保 Tesseract 的路径(如 C:\Program Files\Tesseract-OCR)被添加到了系统的 PATH 环境变量中。

安装 Python 库 pytesseractPillow

pip install pytesseract Pillow

验证和使用 pytesseract

# test_pytesseract.py
import pytesseract
from PIL import Image
# (可选) 如果你没有将 Tesseract 添加到 PATH,需要指定其路径
# pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe' # Windows
# pytesseract.pytesseract.tesseract_cmd = '/usr/local/bin/tesseract' # macOS
try:
    # 打开图片
    image = Image.open('test.png')
    # 进行OCR识别
    # lang='chi_sim' 表示使用简体中文识别,如果图片是英文,可以省略或设为 'eng'
    text = pytesseract.image_to_string(image, lang='eng')
    print("识别结果:")
    print(text)
except Exception as e:
    print(f"发生错误: {e}")
    print("请检查 Tesseract OCR 是否已安装并配置正确。")

运行脚本:

python test_pytesseract.py

更强大的替代方案:easyocr (开箱即用)

easyocr 的优点是安装简单,开箱即用,对中文等语言支持非常好,准确率高。

安装 easyocr

pip install easyocr

验证和使用 easyocr

# test_easyocr.py
import easyocr
# 创建一个 Reader 对象
# 第一次运行时会自动下载语言模型,需要一些时间
# 'ch_sim' 代表简体中文, 'en' 代表英文
reader = easyocr.Reader(['ch_sim', 'en'])
try:
    # 读取图片
    result = reader.readtext('test.png')
    print("识别结果:")
    for (bbox, text, prob) in result:
        # bbox: 文本框坐标
        # text: 识别出的文本
        # prob: 置信度
        print(f"文本: {text}, 置信度: {prob:.2f}")
except Exception as e:
    print(f"发生错误: {e}")

总结对比

特性 pytesser (旧) pytesseract (现代) easyocr (推荐)
维护状态 已废弃 积极维护 积极维护
依赖引擎 Tesseract OCR v2.x Tesseract OCR v5.x 基于深度学习
安装难度 极高 (难找旧版引擎) 中等 (需安装Tesseract) 非常简单 (pip install)
识别准确率 极低 非常高
功能 基础 丰富 (支持多种输出格式) 丰富 (支持检测、识别、置信度)
中文支持 依赖语言包,良好 优秀 (开箱即用)
推荐场景 ,仅维护旧项目 学习Tesseract或需要高度定制时 绝大多数新项目的首选

最终建议: 请直接跳过 pytesser,选择 pytesseracteasyocr 开始你的OCR项目,这将为你节省大量调试和兼容性问题的时间,并获得更好的效果。

分享:
扫描分享到社交APP
上一篇
下一篇