有大佬会爬虫吗,知乎的x-zse-96加密怎么解决

知乎的接口

https://www.zhihu.com/api/v4/search_v3?gk_version=gz-gaokao&t=general&q=%E6%B5%8B%E8%AF%95&correction=1&offset=0&limit=20&filter_fields=&lc_idx=0&show_all_topics=0&search_source=Normal

请求头

x-zse-96:2.0_aRZZ0DH85iFxclVt5ZB05gWlZnXZCjX7wAy6u7yzhJD82Mje/d6xlyeXm7H9je+i
x-zse-93:101_3_3.0
cookie:d_c0="AQCQcOpXOBWPTtRZWliSpe1gbK2WjgF8dnM=|1657338395"

x-zse-96,怎么加密的,网络上的方法都过时了,知乎10几号更新了加密方法,我试了,加密长度都对的,结果是失败

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 20

扒它的客户端代码

1年前 评论
ytoz (楼主) 1年前
忆往昔弹指间 (作者) 1年前
ytoz (楼主) 1年前
ytoz (楼主) 1年前

它的js加密源码在 static.zhihu.com/heifetz/main.app.... ,你搜 x-zse-96 关键字然后逆向查询,就能一步步看到加密过程,我不是专业写js的,而且这个混淆代码我也不怎么想看,只能你自己琢磨了

1年前 评论
ytoz (楼主) 1年前

实在费劲其实可以直接无头浏览器解决问题

1年前 评论
ytoz (楼主) 1年前
Coloynle (作者) 1年前
Coloynle (作者) 1年前
ytoz (楼主) 1年前
Coloynle (作者) 1年前

说不定你找出来的x-zse-96加密是对的,可能是这个原因,我复制了一份请求的curl出来,我发现和你描述的请求,多出了一个请求头 x-zst-81,而且是必须要的,我删除这个请求头去请求,就报 {"error":{"code":10002,"message":"10002:请求参数异常,请升级客户端后重试"}},你再继续琢磨一下源码,是不是它会根据某些条件判断是否需要加 x-zst-81,这个请求头要不要加估计是动态的,因为我用你上面给的参数不加这个请求头确实是可以请求的。

file

1年前 评论

楼主有找到解决办法吗?

1年前 评论
Runtoweb3 1年前

github.com/chromedp/chromedp github.com/PuerkitoBio/goquery 反正golang基本这两个包解决问题,你可以找对应语言的包

1年前 评论

请问楼主解决了么?

1年前 评论
midhao 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!