一. 安装tesseract
- 首先,我们需要安装exe,下载地址是https://digi.bib.uni-mannheim.de/tesseract/。
- 我下载的是
- 据参考资料链接,不用使用带“dev”版本(开发版本),安装的时候注意不要把语言(additional language data)选择勾上~~否则一直报错。
- 把additional勾上的后果:弹出了很多error,是被墙了;因此这里不能够勾选“**additional language data**”。
- 装好后,把tesseract的tessdata这个文件夹,复制粘贴到anaconda下面的Scripts同一个文件夹。
- 属性-系统变量设置:把刚刚安装好的tesseract文件夹路径放进去。
因为在安装tesseract的软件的时候,我命名为tesseract;如果没有自己改名的话, 那么名字应该是
Tesseract-OCR。
同时,把tessdata的路径也要放到系统变量中。
变量名:TESSDATA_PREFIX——>变量值:D:\softwares\tesseract\tessdata
- 下载语言包
- 刚刚我们没有勾选的“additional language data”,这里自己安装。
- 链接:https://pan.baidu.com/s/16kh-ylMXpCDOjKcedRP9bQ,提取码:dhzx。解压之后,把tessdata的红框数据,贴到tesseract/tessdata中。
- 然后在cmd中,查看语言:tesseract —list-langs。可以看到结果成功。重启电脑。
二. Python中的tesserocr安装
- 在安装好了tesseract之后,我们还需要安装Python包。
- 接着,到这个路径下面,https://github.com/simonflueckiger/tesserocr-windows_build/releases,选择合适的版本的的whl,我的电脑是python3.7+64位。可以在cmd中通过输入python查看信息。那么选择对应版本的whl下载。
- 然后,把下载的whl文件放到Scripts中。就是刚刚tessdata同一个文件夹下面的那个Scripts。
- 通过cmd进入到Scripts文件夹,进行安装,输入 pip3 install tesserocr-2.4.0-cp37-cp37m-win_amd64.whl
如果没有成功,那就是pip没有添加到环境变量中,自己添加一下。
三. 实验
- 在cnki中找到一个验证码,http://my.cnki.net/elibregister/CheckCode.aspx,然后右键保存在本地。然后,在Python中进行识别。
import tesserocr
from PIL import Image
image = Image.open(r'C:\Users\dell\Pictures\验证码\5.png')
image = image.convert('L')
print(tesserocr.image_to_text(image))
最后能够 识别为6220。
- 缺点
- 碰到复杂的验证码,就不行了。
- 例如,加上了北京跳就不能识别。
以上就是简单的tesseract使用。欢迎点赞和收藏。