Tesseract-OCR 引擎安装

🔧 步骤 1:安装 Tesseract-OCR 引擎

Tesseract-OCR 是开源的 OCR 引擎,需要先在电脑上安装它(Pytesseract 只是 Python 调用它的"桥梁",本身不包含引擎)。

• 下载安装包:

访问 Tesseract-OCR 的 https://github.com/tesseract-ocr/tesseract/releases,选择 Windows 版本(实际访问查看到的都是源码,我就换了一个地址下载了exe)。

Index of /tesseract

• 安装并配置环境变量:

运行下载的安装包,按向导下一步。关键步骤:在安装界面勾选 "Add Tesseract to your PATH"(如果没有这个选项,安装后需手动添加环境变量,见下方"手动配置 PATH")。

🔧 步骤 2:验证 Tesseract 安装是否成功

安装完成后,打开 命令提示符(cmd),输入以下命令:

bash 复制代码
tesseract -v

如果输出类似 tesseract v5.3.1.20230401 的版本信息,说明安装成功且环境变量配置正确。

🔧 步骤 3:修复代码(2 种情况)

如果安装时没勾选"Add Tesseract to your PATH",或在 CMD 中执行 tesseract -v 提示"不是内部或外部命令",则需要 手动配置环境变量 或 在代码中指定 Tesseract 路径。

情况 1:手动配置系统环境变量(推荐)

  1. 找到 Tesseract 的安装目录:

默认安装路径一般是 C:\Program Files\Tesseract-OCR(如果是自定义路径,找到自己的安装位置)。

  1. 添加到系统 PATH:

• 右键"此电脑"→"属性"→"高级系统设置"→"环境变量"。

• 在"系统变量"中找到 Path,点击"编辑"→"新建",粘贴 Tesseract 的安装目录(如 C:\Program Files\Tesseract-OCR)。

• 依次点击"确定"保存。

  1. 重启电脑(让环境变量生效),再打开 CMD 输入 tesseract -v 验证。

情况 2:在 Python 代码中指定 Tesseract 路径(也可以尝试重启pycharm)

如果不想改系统环境变量,可以在代码开头硬编码 Tesseract 的可执行文件路径:

bash 复制代码
pip install opencv-python

pip install pytesseract
python 复制代码
import pytesseract
from PIL import Image
import cv2

# 指定 Tesseract 可执行文件的绝对路径(替换为你自己的安装路径!)
pytesseract.pytesseract.tesseract_cmd = r'D:\Tesseract-OCR\tesseract.exe'  

# 后续你的 OCR 代码(读取图片、预处理、识别)
img = cv2.imread("captcha.png")
text = pytesseract.image_to_string(img, lang="eng", config="--psm 8 --oem 3")
print(text)

额外检查:图片读取是否正常

如果 Tesseract 引擎配置好后仍报错,需检查 验证码图片是否成功读取。可以在代码中添加图片验证逻辑:

import cv2

img = cv2.imread("captcha.png")

if img is None:

print("❌ 图片读取失败!检查路径是否正确(如 'captcha.png' 是否和代码同目录?)")

else:

print("✅ 图片读取成功,尺寸:", img.shape)

后续 OCR 代码...

总结

错误的根因是 Tesseract-OCR 引擎未安装/未配置环境变量,按上述步骤安装并配置后,Pytesseract 就能正常调用引擎识别验证码啦~

相关推荐
benchmark_cc23 分钟前
用 Python 拉 A 股全市场实时快照:Notebook 请求、结果校验与易错点
python·数据分析·pandas·量化交易·股票数据·quantdash
伞伞悦读35 分钟前
【第70期】Adam二阶矩不是方差:偏差校正、动量与AdamW完整实验
python
外收内放1 小时前
Python基础语法练习题(73)
java·前端·python
锋行天下1 小时前
Langgraph HITL 中断运行,用户输入后输出打字效果
人工智能·python
时早玖沐2 小时前
给 AstrBot 写一个天气推送插件:12 次提交、6 个坑
python·开源·ai编程
触底反弹2 小时前
🚀 FastAPI 五大重难点深度剖析:从 500 报错到彻底搞懂 Depends、Pydantic 与 SQLAlchemy
python·fastapi
cpolar技术支持2 小时前
网关加 gzip,同时开启 chunked,下载回来的包解不开:把两层编码的解压顺序与长度核对做成只读页
python·http·网络编程·socket·内网穿透
小嘉丶学长2 小时前
Day14 · 字典与集合
java·开发语言·网络·python·学习·1024程序员节
迪菲赫尔曼2 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
用户8356290780512 小时前
Python 调整 Excel 工作表显示设置
后端·python