知乎爬虫最新 x-zse-96参数解密教程

知乎x-zse-96解密

抓包分析网页

知乎爬虫最新 x-zse-96参数解密教程_第1张图片

分析Requests Headers里面的参数

知乎爬虫最新 x-zse-96参数解密教程_第2张图片

知乎爬虫最新 x-zse-96参数解密教程_第3张图片

这儿可以发现,在Request请求头里面有一个x-zse-96参数是每次AJAX请求后都会验证的一个参数,如果想要拿数据,就必须解密这个参数。

分析js位置:

知乎爬虫最新 x-zse-96参数解密教程_第4张图片

     在source里的static.zhihu.com里可以找到,然后我们搜索一下x-zse-96发现这个加密参数是由

E.set("x-zse-96", "2.0_" + j)这个方法生成的。

而这儿的 j = A.signature;

知乎爬虫最新 x-zse-96参数解密教程_第5张图片

然后找到signature这个函数 打断点调试:

image.png

拿出明文我们来分析一下:

101_3_2.0+

/api/v4/search_v3?t=general&q=Java&correction=1&offset=60&limit=20&filter_fields=&lc_idx=60&show_all_topics=0&search_hash_id=5c4b8f9eb45943033ea9bae5e7e7f62e&vertical_info=1%2C1%2C0%2C0%2C0%2C0%2C0%2C0%2C0%2C0+

"AJCdO9S3PxOPTtS3KuYMHs_PVfe4bvoHuCk=|1623473562

开始解密:

        不难发现,这个明文是:3_2.0拼接了一个API搜索接口然后又拼接了一个类似于时间戳的加密字符串

知乎爬虫最新 x-zse-96参数解密教程_第6张图片

        但是根据以往知乎的经验,很有可能是md5加密,我们先试一下:

知乎爬虫最新 x-zse-96参数解密教程_第7张图片

        通过python就已经解密出它的加密了。现在只需要还原js环境即可:

知乎爬虫最新 x-zse-96参数解密教程_第8张图片

        通过多次对比发现:

知乎爬虫最新 x-zse-96参数解密教程_第9张图片

知乎爬虫最新 x-zse-96参数解密教程_第10张图片

     每次只需要换掉api参数里面的 offset 和 lc_idx即可实现翻页的功能

        拿到了这个翻页参数x-zse-96,剩下的就是取解析json数据了,这些最基础的就不再过多累赘。

如想要源码和js解密文件的小伙伴可以微信公众号后台私信:

知乎解密

微信公众号本文链接:https://mp.weixin.qq.com/s?__biz=Mzg4OTU0OTAwMg==&mid=2247484497&idx=1&sn=e25d929f9b03dbe49c2ad7718baf308b&chksm=cfeb7df4f89cf4e25420459b81de7853c1cd64498a1042fd4b48e1568e9697229d75cab43f5d&token=1868286036&lang=zh_CN#rd

知乎爬虫最新 x-zse-96参数解密教程_第11张图片

你可能感兴趣的:(python,爬虫,加密解密,知乎网)