一、分析网站
不难发现,主要的获取信息流程分为三步,第一步:获取滑块验证码,第二步:验证滑块验证码的缺口,第三部:提交返回后的信息,获取真正的数据二、主要流程处理
现在开始第一步,获取滑块验证码:
查看请求发现,请求头中出现了token参数
这时候查找JS中的内容,发现Token的产生位置:
可以观察出来,Token的产生是一个Ajax请求,这时候开始打断点,进行跟踪
逐步跟踪后发现,通过一个POST请求,发送了authkey、以及timestamp参数,authkey的来源是由w.authKey(A, g, t)函数产生的
t是当前的时间戳,现在需要知道 A g的内容
控制台打印
可以发现两个参数都是test这时候我们进入这个函数
可以看到
authkey函数的主要作用就是将A g I 拼接起来 经过md5后进行输出
这时候authkey参数也就完成了。
这时候查看一下请求的url 这个参数
请求的地址也出来了,这时候token参数的生成也就完成了
python代码实现
可以正常生成现在可以开始分析第一个请求,通过携带Token,获取到了
这是一个滑块的验证码 包含了背景图,高度差,缺口图,以及uuid,
过程中的滑块验证码缺口识别略过。
开始分析第二个请求
请求中携带了
其中key就是我们的uuid value就是需要滑动的距离(比较人性了,没有滑动轨迹那个鬼东西)成功后会返回
记住此处的params
现在开始分析第三个请求(获取数据):
请求中需要了三个参数 token sign uuid
token就是我们最开始生成的token
uuid就是在第一步的时候生成的uuid
sign就是刚刚的params,通过携带这三个参数,就可以获取真正的数据了
编写python代码 进行验证
完成、仅做分析使用