热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【Python爬虫】破解按照顺序点击验证码(非自动化浏览器)

#请求到验证码base64编码json_img_datajson_raw.get(Vimage)#获取到验证码编码 #保存验证码图片到本地defbase64_to_img(bstr

# 请求到验证码base64编码

json_img_data
= json_raw.get("Vimage") # 获取到验证码编码

 

# 保存验证码图片到本地
def base64_to_img(bstr, file_path):
imgdata
= base64.b64decode(bstr)
file
= open(file_path, 'wb')
file.write(imgdata)
file.close()
# 保存验证码图片
base64_raw = json_img_data.get('img_data').replace("\\", "")
res_base64
= base64_raw.split(",")[1]
base64_to_img(res_base64,
"./demo.png")

 

 

## 使用打码平台获取到 坐标返回的X1,X2,X3, 判断按照顺序的大小排序
# 破解验证码
chaojiying = CodeBeat('USERNAME', 'PASSWORD', '96001')
im
= open("./demo.png", 'rb').read()
code_json
= chaojiying.PostPic(im, 9103)
if code_json.get('err_no') == 0:
code
= code_json.get('pic_str') # 获取验证码坐标
    # 根据返回X1,X2,X3进行判断索引大小 每个KEY都会绑定对应的值
    # 这里是正确顺序的排序值:['UDFaT3hLdHJnSWttVU5SRFprTVBidz09Ojo4Pwj2dvDQhaPmgYVfumhA', 'SW5lMHVjaUxHVjZhcmRLMGRKeDFxdz09OjorPeYEpqwTUYfr9Ds/IkB6', 'TXIvSUxiOFR2Um0yVXhtcDZLYVBSdz09Ojq4jiV9X6StjGFsZXretbRR']
    # 这里需要注意的是,每次的请求参数回来 都会带上 "\" 这种符号是转义符号,需要通过代码处理掉的, replace("\\","")
    # 对方需求的数据格式为: 三个相同的KEY 按照你点击的顺序 提交到后端进行判断验证码
    

   # 因为传统字典里面的KEY相同就会覆盖值,所以这里需要用到列表来充当存放值

    datas = { "p": "get_verification", "login_layer": "su", # 使用形式 ver_result[]: [v1,v2,v3] "ver_result[]": [img_list[sort_list[0]],img_list[sort_list[1]],img_list[sort_list[2]]], # img_list是原验证码排序, sort_list是经过判断坐标后返回的正确的索引顺序 "action":"ver_checkresult", }

    page = session.post(url=url,data=datas)

 

主攻:Python 数据分析 web 机器学习 图像识别。。

副攻:JAVA WEB 安卓 大数据



推荐阅读
  • 本文将详细介绍如何在没有显示器的情况下,使用Raspberry Pi Imager为树莓派4B安装操作系统,并进行基本配置,包括设置SSH、WiFi连接以及更新软件源。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 自己用过的一些比较有用的css3新属性【HTML】
    web前端|html教程自己用过的一些比较用的css3新属性web前端-html教程css3刚推出不久,虽然大多数的css3属性在很多流行的浏览器中不支持,但我个人觉得还是要尽量开 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • PHP插件机制的实现方案解析
    本文深入探讨了PHP中插件机制的设计与实现,旨在分享一种可行的实现方式,并邀请读者共同讨论和优化。该方案不仅涵盖了插件机制的基本概念,还详细描述了如何在实际项目中应用。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 本文探讨了如何在Classic ASP中实现与PHP的hash_hmac('SHA256', $message, pack('H*', $secret))函数等效的哈希生成方法。通过分析不同实现方式及其产生的差异,提供了一种使用Microsoft .NET Framework的解决方案。 ... [详细]
  • 推荐几款高效测量图片像素的工具
    本文介绍了几款适用于Web前端开发的工具,这些工具可以帮助用户在图片上绘制线条并精确测量其像素长度。对于需要进行图像处理或设计工作的开发者来说非常实用。 ... [详细]
  • Python3 中使用 lxml 模块解析 XPath 数据详解
    XPath 是一种用于在 XML 文档中查找信息的路径语言,同样适用于 HTML 文件的搜索。本文将详细介绍如何利用 Python 的 lxml 模块通过 XPath 技术高效地解析和抓取网页数据。 ... [详细]
  • 在研究网络爬虫时,遇到了一个问题:抓取到的数据与浏览器中显示的不一致。通过JavaScript动态更新的内容无法直接获取。本文将探讨如何有效捕获这些动态变化的数据。 ... [详细]
author-avatar
逢源堂_344
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有