tesserocr验证码识别

https://digi.bib.uni-mannheim.de/tesseract/

https://blog.csdn.net/SpuerCheng/article/details/79323620

https://github.com/simonflueckiger/tesserocr-windows_build/releases

https://blog.csdn.net/taiyangmiaomiao/article/details/81945158

 

1.初识tesserocr

 tesserocr是Python的一个OCR识别库,但其实是对tesseract做的一层Python API封装,所以它的核心是tesseract。因此,在安装tesserocr之前,我们需要先安装tesseract。

2. 相关链接

tesserocr GitHub:https://github.com/sirfz/tesserocr
tesserocr PyPI:https://pypi.python.org/pypi/tesserocr
tesseract下载地址:http://digi.bib.uni-mannheim.de/tesseract
tesseract GitHub:https://github.com/tesseract-ocr/tesseract
tesseract语言包:https://github.com/tesseract-ocr/tessdata
tesseract文档:https://github.com/tesseract-ocr/tesseract/wiki/Documentation
3. Windows下的安装

在Windows下,首先需要下载tesseract,它为tesserocr提供了支持。其中文件名中带有dev的为开发版本,不带dev的为稳定版本,可以选择下载不带dev的版本。

下载完成后双击,此时会出现如图1-25所示的页面。 

 此时可以勾选Additional language data(download)选项来安装OCR识别支持的语言包,这样OCR便可以识别多国语言。

注: 建议只选Additional language data 中自己需要的语言包,大部分是用不到的。个人选的是中文跟英文

4.配置tesseract环境变量

将以下两个路径添加到path中,命令行输入tesseract没有错误即安装成功

D:\Program Files\Tesseract-OCR
D:\Program Files\Tesseract-OCR\tessdata
5.安装tesserocr

首先 pip install pillow
pip3 install tesserocr 会出现以下错误:
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools

解决方法: 下载tesserocr-2.2.2-cp36-cp36m-win_amd64.whl
pip3 install tesserocr-2.2.2-cp36-cp36m-win_amd64.whl
下载地址 https://pan.baidu.com/s/1_tgn_FP7IcP6ddi3UVK0Hw 密码:rpbr
6.tesserocr简单使用

import tesserocr
from PIL import Image
 
image = Image.open('code.png')
result = tesserocr.image_to_text(image)
print(result)
注: 如果出现以下错误 ,添加以下环境变量

变量名:TESSDATA_PREFIX,变量值: D:\Program Files\Tesseract-OCR\tessdata

RuntimeError:Failed to init API, possibly an invalid tessdata path: D:\Users\Administrator\AppData\Local\Programs\Python\

不出意外,首次运行总是不顺利,相信我遇到的坑大多数人都会遇到,大抵错误类似:

 

Traceback (most recent call last):
  File "c:\Users\NewJune\test.py", line 4, in <module>
    print(tesserocr.image_to_text(image))
  File "tesserocr.pyx", line 2400, in tesserocr._tesserocr.image_to_text
RuntimeError: Failed to init API, possibly an invalid tessdata path: C:\Python36\

 

不难看出 tesserocr.py文件没有指定正确的tessdata 路径,本人的python也并非安装在C:\Python36\,网上看到的方法都是添加D:\Program Files\Tesseract-OCR这个到系统环境变量,依然不成功,目前本人没找到如何修改tesserocr.py关联的tessdata path有效方式,但是比较简单粗暴的方法是,可以根据提示,直接手工新建C:\Python36\,并将D:\Program Files\Tesseract-OCR对应的tessdata文件夹整个拷贝到C:\Python36\即可。亲测有效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

huanghong6956

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值