python爬虫 tensseroce的安装
简介
在爬虫过程中,难免会遇到各种各样的验证码,而大多数验证码还是图形验证码,这时候我们可以直接用OCR来识别
OCR
OCR,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程。对于图形验证码来说,它们都是一些不规则的字符,这些字符确实是由字符稍加扭曲变换得到的内容。
我们可以使用OCR技术将其转化为电子文本,然后爬虫将识别结果提交给服务器,便可以达到自动识别验证码的过程。
tesserocr是Python的一个OCR识别库,但其实是对tensseract做的一层Python API封装,所以他的核心是tensseract。因此,在安装tesserocr之前,我们需要县安装tesseract.
Ubuntu 安装
sudo apt-get install -y tesseract-ocr libtesseract-dev libleptonica-dev
接着我们查看一下其支持的语言:
tesseract --list-langs
运行结果
List of available languages (2):
eng
osd
结果显示它只支持集中语言,如果向安装多国语言,阿訇i需要安装语言包,官方叫做tessdata
在Ubantu系统的迁移命令如下
git clone https://github.com/tesseract-ocr/tessdata.git
sudo mv tessdata/* /usr/share/tesseract-ocr/tessdata
这样就可以将下载下来的语言包全部安装了
这时我们重新运行列出语言的命令:
tesseract --list-langs
结果如下:
可以发现,这里列出的语言就多了很多,比如chi_sim就代表简体中文,这就证明语言包安装成共了
接下来再安装tesserocr即可,这里直接使用pip安装
pip3 install tesserocr pillow