当前位置: 首页 > news >正文

百度多段轨迹验证码识别

一、简介

如下图是百度的多段轨迹验证码图例,这个轨迹验证码是分段显示的,你必须根据轨迹先滑动一定的距离,然后才会显示第二段轨迹的的图片。

由于这样的独特设计,也让这个验证码的轨迹识别难度直线上升。

二、识别代码

经过我们这几天的熬夜奋战,终于解决了这款轨迹验证码的识别问题,正确率也达到了90%以上。

下面是python识别验证码的样例代码

import base64 import requests import datetime from io import BytesIO from PIL import Image t1 = datetime.datetime.now() #PIL图片保存为base64编码 def PIL_base64(img, coding='utf-8'): img_format = img.format if img_format == None: img_format = 'JPEG' format_str = 'JPEG' if 'png' == img_format.lower(): format_str = 'PNG' if 'gif' == img_format.lower(): format_str = 'gif' if img.mode == "P": img = img.convert('RGB') if img.mode == "RGBA": format_str = 'PNG' img_format = 'PNG' output_buffer = BytesIO() # img.save(output_buffer, format=format_str) img.save(output_buffer, quality=100, format=format_str) byte_data = output_buffer.getvalue() base64_str = 'data:image/' + img_format.lower() + ';base64,' + base64.b64encode(byte_data).decode(coding) # base64_str = base64.b64encode(byte_data).decode(coding) return base64_str # 加载图片 img1 = Image.open(r'E:\Python\lixin_project\OpenAPI接口测试\test_img\84.jpg') # 图片转base64 img1_base64 = PIL_base64(img1) 验证码识别接口 可以根据自己网络情况选择不同接口 http://bq1gpmr8.xiaomy.net(电信) http://220.167.181.200:9009(移动、电信、联通) # 验证码识别接口 url = "http://220.167.181.200:9009/openapi/verify_code_identify/" data = { # 用户的key "key":"onNYnzzAWPO8E0bPDmJv", # 验证码类型 "verify_idf_id":"84", # 样例图片 "img_base64":img1_base64, } import json print(json.dumps(data)) header = {"Content-Type": "application/json"} # 发送请求调用接口 response = requests.post(url=url, json=data, headers=header) # 获取响应数据,识别结果 print(response.text) print("耗时:", datetime.datetime.now() - t1)

识别完成后得到是滑动轨迹点的坐标,如下所示。这样就可以根据轨迹点坐标模拟滑动,或者js逆向直接走协议过验证码。

识别结果:[(83, 121), (100, 131), (117, 140), (133, 148), (148, 154), (162, 158), (176, 162), (188, 165), (200, 167), (210, 169), (219, 171), (226, 173), (232, 174), (237, 175), (241, 175), (244, 174), (246, 172), (246, 169), (247, 164), (246, 158), (246, 151), (245, 142), (243, 132), (240, 120), (237, 106), (233, 91), (227, 73), (221, 54), (212, 33), (203, 10)]

我把轨迹点的坐标可视化出来就是如下图所示的样子,图中轨迹点用蓝色点进行了标注。基本上和曲线完美重合。

想了解更多验证码识别请访问:http://bq1gpmr8.xiaomy.net/tool/verifyCodeHomePage2/?_=1771917979926

http://www.jsqmd.com/news/408453/

相关文章:

  • 2026年美国名义雇主EOR服务商盘点,海外人力资源外包服务商推荐 - 品牌2025
  • 亚马逊最大规模科学实习生项目详解
  • 植物大战僵尸融合版下载安装全攻略:2026最新稳定版一键畅玩 - PC修复电脑医生
  • 2026年2月徐州民办高中学校选型指南:智慧教育重构竞争格局,头部院校引领升学新范式 - 2026年企业推荐榜
  • 新中式美学标杆|2026西安新中式家具厂家TOP3,木灵生凭实力登顶 - 朴素的承诺
  • 2026年福州宁德口碑好的定制衣柜推荐厂家,专业定制服务全解析 - mypinpai
  • 大型制造企业UG/NX的license管理核心痛点分析
  • 2026年沈阳大连鞍山好用的中医智能装备制造商年度排名及推荐 - mypinpai
  • 2026年深圳会议执行公司有哪些靠谱品牌 - 工业设备
  • LORA无线数传终端:穿透性强抗干扰,适配RS485转LORA复杂环境部署场景
  • icf教练认证机构选择|埃里克森以国际权威赋能职业教练成长 - 资讯焦点
  • AutoCAD许可证季度盘点与审计标准化作业流程
  • 2026年企业微信开通方式全解析:从零注册到高级功能部署指南 - 品牌2025
  • 厉害了!!!电子厂的女工做《迷你世界》游戏的主播并自学编程成了哔哩哔哩的UP主,未来的世界人人会编程不是梦
  • 分析2026年有经验的豆包广告服务商,吉林哪家性价比高 - 工业设备
  • LORA无线数传终端:RS485无线转换,远距离稳定通信
  • 构建AIOPS基石:从零到一打造高质量运维大模型训练数据集
  • Python全栈入门到实战【基础篇 20】文件操作核心:读取、写入与管理
  • 工业生产AI优化服务:企业常见疑问解析
  • contains()函数的基本用法
  • Python全栈入门到实战【基础篇 19】函数进阶:默认参数、递归函数与偏函数应用
  • 工业AI服务:降本增效与政策适配的融合之路
  • 2026年柴油发电机组维修公司权威推荐:柴油发电机组保养/柴油空压机保养/柴油空压机租赁/柴油空压机维修/选择指南 - 优质品牌商家
  • LVGL笔记
  • 一个链接问题
  • 企业微信上门服务2026年最新政策与实施指南 - 品牌2025
  • 口服抗衰有什么推荐品牌?斐萃抗衰小紫瓶等几款闭眼入 - 速递信息
  • 李家洋钱前院士综述Rice2035:水稻研究与育种的十年愿景
  • 天津建筑企业代理记账怎么选,靠谱的代理记账公司推荐 - myqiye
  • CF833E Caramel Clouds | 木府题解