本文来源吾爱破解论坛
本帖最后由 xutaocs 于 2019-12-13 11:29 编辑
python使用requests库爬取淘宝食品信息,包含sign参数破解。1.网站分析参考资料:JS断点调试 https://blog.csdn.net/qq_39009348/article/details/81563831打开淘宝页面搜索"美食"共有一百页数据,一页100条数据
右键——检查 或者 按F12 在 NetWork 中的一大坨里找到自己想要的东西(看response里有没有自己想要的数据,想看主页面里有没有,再到XHR里看看是不是Ajiax传得,最后到JS里翻)这个URL就是我们的目标了request URL 中发现有一堆参数,那么看看下面都传了些啥参数翻翻页发现很多值是固定不变的,一定会变或者可能会变的有下面这些值经过观察和一些尝试(这里就不细说了)t 和 sign 的值是每次都会变的,keyword则是自己搜索的字段,page则是页数,最后面那个wangwangid则是你当前登陆的用户名(随cookies变化)经过我的测试,根据上面的参数构造请求可以获取到数据,但是 t 和 sign 的值每次都会变,不可能我每翻一页都要自己改参数,所以只能去找这两个参数是怎么来的了,嗯 t 明显是时间戳(t = int(time.tiam()*1000)), 主要是 sign 的值经过一番努力,我找到了这个参数怎么构造的发现 sign 是将几个参数用"&"连接后再有MD5加密所得,然后使用js断点调试看看这几个参数都是什么意思,上面有js断点的文献,不明白的可以参考一下。j = h(d.token + “&” + i + “&” + g + “&” + c.data)
sign: j1. d.token
发现这个 token 与 cookies 里的 token 有点像,去看看,发现
就是这个了,这里要注意 这个 token 的大概每隔一个小时就会改变一次2. i
这个 i 的值和之前 t 的值一样 ,int(就是 time.time()*1000)3. g
不难发现 g 就是之前请求里的一个固定值 appKey : 125744784. c.data
就是之前请求的参数里的 data
所有 sign = md5(d.token + “&” + i + “&” + g + “&” + c.data) 这种形式
最后贴下结果
代码在我csdn博客上有,可以参考一下:https://blog.csdn.net/a15378785375/article/details/88371970
版权声明:
本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。
- 上一篇: mzitu爬虫,小福利。
- 下一篇: 【原创源码】【python语言】+http服务器实现