python爬虫之图形验证码识别-tesseract库初体验。
ps:环境使用macos,python 3.7,pip3
本教程将记录我学习python爬虫的所有经验。
在爬虫中难免会遇到很多验证码问题,我们可以直接使用ORS(Optical Character Recognition)光学字符识别,通过扫描字符,然后通过起形状将其翻译成电子文本的过程。
我们先来安装所需要的库
brew install imagemagick
brew install tesseract --all-languages //此库安装大概1.2G 大家要有点耐心。最后安装tesserocr
pip3 install tesserocr pillow
验证是否安装成功
我们直接来识别一个图片看看能否返回成功。
将图片保存到桌面,然后在控制台执行下面代码
cd Desktop
tesseract image.png result -l eng && cat result.txt
使用tesseract识别 imgage.png图片里面的文字
result --> 保存结果的文件名称
-l 使用的语言
eng 英文
cat result.txt 输出之前保存的result.txt文字。
输出结果:
Tesseract Open Source OCR Engine v3.05.02 with Leptonica
cat: result: No such file or directory
我们在代码中测试一下
创建一个文件夹,里面创建一个tesserocrTest.py(ps:名字不能为resserocr.py,会和我们要引用的库名冲突导致报错),然后将image.png放入文件夹中
import tesserocr
from PIL import Image
image = Image.open('image.png')
print(tesserocr.image_to_text(image))
运行结果:Python3WebSpider
如果都成功输出,证明tesseract / tesserocr都安装成功。