Tesserocr 的安装
OCR,即 Optical Character Recognition,光学字符识别。是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程。那么对于图形验证码来说,它都是一些不规则的字符,但是这些字符确实是由字符稍加扭曲变换得到的内容。
Tesserocr 是 Python 的一个 OCR 识别库,但其实是对 Tesseract 做的一层 Python API 封装,所以它的核心是 Tesseract
安装步骤
一、安装tesseract
win10电脑中,安装tesseract可以进入该网址进行下载 Index of /tesseract
文件名中带有dev的为开发版本,不带dev的为稳定版本。
下载完成之后双击安装即可,在安装过程中可以勾选上 Additional language data 选项,安装 OCR 识别支持的语言包,这样 OCR 便可以识别多国语言。不勾选可自行下载语言包添加至essdata目录下。
二、配置环境
-
打开安装目录并拷贝 :
-
点击此电脑右键属性->高级系统设置->高级->环境变量:
-
在这两个path中均添加tesseract-ocr的安装路径:
-
在系统变量中新建一个变量TESSDATA_PREFIX。值为刚刚的路径加上\tessdata。
三、安装tesserocr包
在Pycharm终端执行:
pip install tesserocr pillow
若安装失败,则通过.whl文件安装。
下载地址: Releases · simonflueckiger/tesserocr-windows_build (github.com) ,找对应版本,本例为tesserocr-2.6.2-cp37-cp37m-win_amd64
本例下载至D盘,下载完成后,在终端执行:
pip3 install D:/tesserocr-2.6.2-cp37-cp37m-win_amd64.whl
可以发现安装完成。
四、测试
测试代码如下:
import tesserocr
from PIL import Image
image = Image.open('test.png') # 验证码图片可自行下载
result = tesserocr.image_to_text(image)
print(result)
五、添加语言
可以在终端执行:(此命令列出所有语言包)
(.spider81) PS D:\Python Web\python_spider8ed> tesseract --list-langs
List of available languages in "D:\Program Files (x86)\Tesseract-OCR\tessdata/" (4):
eng
osd
equ
结果显示其只支持几种语言,如果我们想要安装多国语言还需要安装语言包,官方叫做 tessdata
下载链接: https://github.com/tesseract-ocr/tessdata 比如 chi_sim 就代表简体中文
将其移动至安装路径下的D:\Program Files\Tesseract-OCR\tessdata目录下。
接下来再安装 Tesserocr 即可,直接使用 Pip 安装
pip install tesserocr pillow