验证码识别
反爬机制:验证码
验证码是门户网站使用的一种反爬机制。
识别验证码图片中的数据,用于模拟登录操作。
识别验证码
方式
- 人工肉眼识别(不推荐,效率低)
- 第三方自动识别
第三方自动识别
超级鹰
收费的,不能白嫖了,量力而行吧
http://www.chaojiying.com/
图鉴
tesserocr
穷逼的我选择这个-_-
tesserocr 是 Python 的一个 OCR 识别库
tesserocr其实是对 tesseract 做的一 层 Python API 封装,所以它的核心是 tesseract。
因此,在安装 tesserocr 之前,我们需要先安装 tesseract 。
tesseract 下载地址: http://digi.bib.uni-mannheim.de/tesseract
tesseract 语言包: http://github.com/tesseract-ocr/tessdata
tesseract 文档: https://github.com/tesseract-ocr/tesseract/wiki/Documentation
1、下载 tesseract ,安装
2、配置环境变量
3、安装 tesserocr(很麻烦,容易报错)
pip install tesserocr pillow
如果通过 pip 安装失败,可以尝试 Anaconda 下的 conda 来安装:
conda install -c simonflueckiger tesserocr pillow
测试:
import tesserocr
from PIL import Image
image = Image.open('image.png')
result = tesserocr.image_to_text(image)
print(result)
还可以直接调用 tesserocr 模块的 file_to_text() 方法,可以达到同样的效果:
import tesserocr
print(tesserocr.file_to_text('image.png'))
参考文章:
https://www.cnblogs.com/Jimc/p/9772930.html
http://www.xueshanlinghu.com/excellent-articles/2555.html
实战
由于特殊原因不能使用自动识别,故使用人工肉眼智能(智障)识别。
import requests
from lxml import etree
if __name__ == "__main__"