当前位置:网站首页 > 技术博客 > 正文

京东破解版在线下载地址



本文主要写一下激活成功教程京东登录时候滑块的分析步骤,具体代码未做展示.
本来以为京东的滑块验证码如果用selenium 直接滑动的话,会很容易.但是,万万没有想到,无论怎么滑,都没法成功.后来,决定直接请求接口试试吧,没想到成功了.所以,拿来分享一下了.
首先,输入用户名和密码后,点击登录京东是一定会出现验证码的.在这里插入图片描述
看着跟其他网站的验证码是一样的.
分析过程分为了以下几步:

第一步:获取背景图

观察接口,找到这样一个接口在这里插入图片描述
返回值是这样的:

 

返回值有两个值bg和patch,猜想应该是base64编码后的值,解析试一下:

 

查看保存的图片,bg是带缺口的背景图,patch是滑块.
那我们直接构造请求就可以了,请求参数:
在这里插入图片描述
其中有一个e参数,在页面找不到.不过经过多次测试,可以把它写死,可以顺利得到图片.

第二步:计算缺口位置

接下来,我们就需要找出缺口位置了,京东是没有完整的图片的,不能按照一般的寻找缺口位置的方法,可以使用python的cv2模块做图像处理,得出缺口位置.

第三步:发送滑块滑动验证

滑动滑块后,可以发现会发出下面一个请求:
在这里插入图片描述
后面的返回值可以看出是滑动是否成功的信息,观察一下请求参数在这里插入图片描述

这些参数大部分都可以找到,e可以是上一步写死的参数,s的值如过全局搜索一下,会发现是接口

 

的返回值里的sessionId,c是上一步得到图片的返回值challenge,其他的在网页上也都能得到,只有d这个参数,怎么都找不到,猜想猜想是不是跟滑动的位置信息有关,因为我们得到的缺口的位置还没有找到.
设置一个鼠标mouseleave时间,调试跟踪一下(需要有耐心),找到了生成d的js位置:
在这里插入图片描述
当再次滑动滑块的时候,松开,js会暂停到这里,此时,在控制台输入g,可以看到g是一个数组,这个数组的元素有三个值,猜测应该是坐标和时间戳:在这里插入图片描述
经过多次调试发现规律,

  1. 数组的第一组基本不变.
  2. 数组的最后一个元素的第一个数减去第一个元素的第一个元素,正是第二步得到的缺口位置.且每两个元素之间的差值不大
  3. 数组的每一个元素的第二个数基本不变或只有很小距离的变化
  4. 数组的大小不固定
 

我们按照js的方法对构造的数组加密,可以得到d. python执行js函数的模块可以使用pyexecjs.我们把加密js函数复制过来,执行一下就行.
接下来发送验证请求就行,结果如下:
在这里插入图片描述
以上就是滑块验证部分.限于篇幅,下一篇再分析一下如何登录京东.

  • 上一篇: 图像滤波的原理
  • 下一篇: pymysql官方文档
  • 版权声明


    相关文章:

  • 图像滤波的原理2025-05-14 07:01:15
  • 数据结构的时间复杂度2025-05-14 07:01:15
  • 移位指令应用实例2025-05-14 07:01:15
  • %hx在c语言中是什么意思2025-05-14 07:01:15
  • 用getchar输入一个字符,用putchar输出2025-05-14 07:01:15
  • pymysql官方文档2025-05-14 07:01:15
  • 准确率和召回率的计算2025-05-14 07:01:15
  • deepin 远程桌面xrdp2025-05-14 07:01:15
  • mysql函数大全2025-05-14 07:01:15
  • 微信小程序怎么修改appid2025-05-14 07:01:15