前言
本文无任何理论知识,只有分析流程。感谢大佬们的各种rs文章,能站在巨人肩膀上的感觉真好,另外,公众号:python头等奖 有文章会第一时间发布,欢迎各位大佬关注
正文
准备工作
1.用正则或者其他方法,匹配出第一次请求,返回202或者412状态码的html中的meta标签中的content值
2.用正则取出下方,有一个r="m"标识的,所有js源码
3.在准备工作2的js里,正则匹配出入口函数,直接搜call,就出来了
4.取出准备工作3里面,入口函数call里的第二个参数,至于这两个参数是什么,如图
5.请求下面的这个链接,拿出里面的源码,可以看到是一个带$_ts的代码。(对就是要这个变量,这个变量里包含n多个能用到的东西)
扣代码
1.把准备工作3里的call修改下,如图
2.合并下准备工作5和3的代码,并取出变量jk的值(也就是准备工作4里面的代码),还有window.$_ts里的某些值,是固定取23,25,27和29,可以写死。
[Object.values(window.$_ts)[23],Object.values(window.$_ts)[25],Object.values(window.$_ts)[27],Object.values(window.$_ts)[29]]
3.匹配取出jk里的20位数组的值和键,搜64;打上断点就能找到,多试几次,发现其实是固定值,不变的,也可以写死
4.根据2里面的字符串,取出3里对应KQ.字符串变量的数值。这里的KQ就是window.$_ts,如图
5.找到准备工作1里面meta标签中的content值,引用的地方,修改本地js,并留下一个口子自己传值。
6.最后根据步骤2,和截图的步骤找到参与计算cookie的核心20位数组
小结
本来想一篇写完的,但是近期琐碎工作比较多(可恶的资本家),所有流程肝一遍的话,时间太久了,就先暂且到这里吧,有时间,再接着扣128位数组和cookie的生成