知乎倒立文字验证码的识别
因为实验模拟登陆知乎,短时间内多次反复登陆退出。。。知乎的倒立文字验证码就来了。(也弄不太清楚触发机制)
倒立文字验证码的识别比较麻烦。。。github上有个大佬写了个zheye,刚好可以直接拿来使用一哈~~(大佬666)
配置环境没啥要写的
有个网站 https://www.lfd.uci.edu/~gohlke/pythonlibs/ ,如果安装过程中有某个包安装一直安装出错,可以用这个网站来单独下载安装(Windows平台哈)。。。
使用zheye来识别倒立文字验证码
下面有几个验证码



调用代码非常简单(人大佬的示例就这么写的。。。)
from zheye import zheye
z = zheye()
positions = z.Recognize('path') # 传入待识别的image路径
print(positions)
"""
上面三个的识别结果是:
第一张图 --> [(47.539838346305075, 278.1807425580301), (50.669637093864495, 39.793204526702326)]
第二张图 --> [(51.29255898128636, 43.4488242276673), (56.464591534329514, 298.2267037254555)]
第三张图 --> [(42.97633810869176, 183.70079377331135)]
"""
稍有些不习惯的地方是,返回的坐标格式是(y, x)并且顺序可能还不是从左到右的,所以稍微的改写下。。。
from zheye import zheye
z = zheye()
positions = z.Recognize('path')
print(positions)
final_pos = []
if len(positions) == 2:
if positions[0][1] > positions[1][1]:
final_pos.append((positions[1][1], positions[1][0]))
final_pos.append((positions[0][1], positions[0][0]))
else:
final_pos.append((positions[0][1], positions[0][0]))
final_pos.append((positions[1][1], positions[1][0]))
else:
final_pos.append((positions[0][1], positions[0][0]))
print(final_pos)
"""
结果:
第一张图 --> [(39.793195121118494, 50.66950388807909), (278.18340966874507, 47.53953343698679)]
第二张图 --> [(43.49618796633462, 51.29616269957013), (298.23012835814836, 56.46431790994157)]
第三张图 --> [(183.70213238750395, 42.97526554733936)]
"""
非常nice啊,机器学习好厉害了。。。(跃跃欲试ing)
上面3张图片是大佬提供的测试图片倒立文字...
好了,倒立文字的验证码识别先这么多了。。。找时间搞搞滑动验证码...
浙公网安备 33010602011771号