文章插图
文章插图
考虑这样一个场景,当你在app端提交订单/登录的时候有一个滑动验证码怎么处理?
一般我们会采用自动化浏览器完成这样的抓取,但是效率太低 。本篇文章尝试将滑动验证码和抓取的代码进行解耦 。
也就是滑动验证码模块只管获取滑动之后的token,而抓取的代码只管抓取 。中间通过相关存储介质进行通讯 。
【阿里云验证码识别 阿里巴巴验证码】背景分析
通过各种尝试发现,某app中阿里云的滑动验证码只是操作行为的验证 。
简而言之,就是阿里云只是知道有人滑了验证码,并且此验证码并没有被使用过 。
通过分析和尝试,我们完全可以有一个自动化浏览器去滑动生成未使用过的token,然后通过python读取token完成相关抓取 。
这样相当于有个滑动验证码池,其他的业务需要的话可以直接读取使用 。
准备知识
puppeteer破解阿里h5滑动验证码
chrome远程调试webview(https://developers.google.cn/web/tools/chrome-devtools/remote-debugging/webviews?hl=zh-cn)
流程分析
使用puppeteer生成未使用过的滑动验证码,并把相关信息拦截,存起来 。python读取滑动验证码池,完成相关抓取 。
效果展示
核心代码
puppeteer 通过监听response事件,把response的内容存起来
page.on('response',asyncresponse=>{leturl=response.url()if(url.indexOf('analyze.jsonp')!==-1){letcontent=awaitresponse.text()if(content.indexOf('block')===-1){letfile_name="slide/"+process.pid+Date.now()+".txt"fs.writeFile(file_name,content+url,{encoding:'utf-8',mode:'0666'},function(err){console.log(err)})}}})
python读取存储的token滑动验证码的token有3个字段,分别是csessionid,value,t(t的格式是xxx:时间戳:随机数)
- 国内云服务器厂商 国内云服务器
- 阿里云平台安全助手 系统自动安全拦截该怎么取消
- 京东 约谈 为什么约谈阿里巴巴
- 阿里巴巴图标素材 阿里小图标网站是什么
- ddos防御价格 阿里云ddos防护多少钱
- 阿里巴巴外贸app下载 阿里巴巴外贸官网
- 局域网共享设置软件v7.0去广告单文件版 局域网共享设置软件 访问本机无需验证即可进入
- ps免费下载安装包百度云 ps免费下载安装包电脑
- 阿里云新增备案一般多长时间 公司网站阿里云备案要多久
- 免签支付是什么意思 云免签原理