爬虫逆向实战"/>
爬虫逆向实战
目标: 今日头条
内容仅供参考学习
目标分析
观察请求参数,发现有一个_signature
加密字段
接口分析:
-
寻找加密位置
-
方案
- 在search中直接搜索加密字段名:
点击进去:
我们可以直接看到加密位置, _signature被赋值n, n是由一个函数执行返回回来的:
- 通过堆栈来寻找
随便先进入一个节点打断点:
进入断点位置,发现传进了一个参数e,我们可以在输出台输出一下,看看里面有什么。发现里面的加密参数已经出现,说明加密参数在这个之前生成的:
此时我们找到Call Stack 在那边找:
最后可以在这个节点下,往后走几步可以找到加密位置:
- 在search中直接搜索加密字段名:
-
加密参数定位
经过一短时间的加密位置定位,最终确定了加密位置:
从图中的标注的地方可以看到,_signature
是由a.call(n, o)
生成的,也可以看成a(n, o);
鼠标悬浮在a上,寻找函数的位置或者在console里直接打印a。
调试进入函数内部:
在这我们可以确定加密位置是对的,这时我们不需要在往下看,直接抠js代码就行。
我在分析期间发现,这个js的这个函数对象被赋值到windows里了
因此我们可以直接这样写即可:function get_sign(params) {var sign = window.byted_acrawler.sign(params)// console.log(sign)return sign }
-
解决结果:
得到的结果虽然不太一样一样但是可以用
更多推荐
爬虫逆向实战
发布评论