今天下班早,回来赶紧记录一下...
这次比较简单,直接python模拟加密规则就可~
以(https://tm.zjol.com.cn/channel/tm_recommend.html?5d8c0b92cf8dfd0001a4143d)为例(仅供学习交流,请勿用作商用):
1. 爬虫第一步,chrome抓包整一股
推荐页抓包很明显,看请求的网页没有返回想要的数据,那就全局搜索一下“上海人民”...
Bingo! 是个异步加载,链接:https://tm.zjol.com.cn/api/article/channel_list?list_count=0&channel_id=5d8c0b92cf8dfd0001a4143d,可以直接从原请求链接拼过来!
全局搜索找到异步加载链接让我们再来康康这个异步加载的请求头有哪些~
异步请求头信息嗯...看见了signature、cookie、referer、timestamp...(cookie其实是不用的哈,自己去试),其他都好说,关键是这个x-signature,那我们全局搜一下康康...
全局搜索X-SIGNATURE嗯,很直观,就在https://app-stc.zjol.com.cn/static-gw/js/currency.min.js里,快速扫一眼js文件,发现了关键的代码,ajax发起了一个请求,url和异步加载的链接基本一样,请求头也一样!!!
兄弟们,破案了。n就是个时间戳,x-signature就是拼接了一个跟时间戳有关的字符串,然后用sha256加密了,其他参数都是定值,你们这么聪明,肯定知道t就是频道id啦!
js加密代码2. 爬虫第二步,python模拟ok咯
python模拟异步请求 完美!!!详情页也有加密,就base和json_url不一样,加个判断处理一下就好了~
最后,老规矩了,我家锤锤镇楼骗赞!!!
嘿嘿嘿
最近会跳了,蚊帐荡秋千玩,回来一看都给整掉了,哼!!!
喵大锤码字不易,兄弟姐妹们赏脸给个赞噢~~
网友评论