本页代码可以在这里下载。
图形验证码的识别:
这个需要下载第三方识别软件(少量免费),
SDK 下载。
SDK 文档。
首先下载SOK,安装之后我们随便找一张图片:
我们使用下例代码调用OCR API
# -*- coding:utf-8 -*- from aip import AipOcr APP_ID = 'xxxxx' API_KEY = 'xxxxxxxxxxxxxx' SECRET_KEY = 'xxxxxxxxxxxxxxxxxxxxxx' client = AipOcr(APP_ID, API_KEY, SECRET_KEY) def get_file_content(filePath): with open(filePath, 'rb') as fp: return fp.read() image = get_file_content('./file/image/Code.png') # """ 调用通用文字识别, 图片参数为本地图片 """ words = client.basicGeneral(image) print(words)
程序输出:
可以看到返回了Sniper和 低智商超记仇软件工程在读。
如果图片识别不准确,对于有些验证码我们可以进行转灰度并进行二值化操作,以方便更好的识别。
极验滑动验证码的识别:
采用边缘算法寻找图片边缘左边,然后使用selenium模拟人拖动模型(因为极验对机器拖动有识别)即先加速再减速移动到目标坐标,但因为极验更改了显示方式(不再提供原图),暂时还没有解决方案。
点触验证码识别:
采用第三方识别(付费),
详见:https://www.chaojiying.com/
微博宫格验证码的识别:
这个我试了近百次登录…都没有遇到验证码。。以后遇到类似的再处理更新。
登录代码也在代码中。
.
0 条评论