首先声明,这是非商业目的、纯个人兴趣的学习。python新手,问题如果幼稚请见谅。我想爬的这个网页,是用ajax动态加载,发送post请求到第三方后台(SaaS),验证后以json格式返回内容,然后显示在网页上。因为缺少appid/appkey,我无法直接用requests库发送post请求拿到内容,直接抓取的结果是"Unauthorized"。Appid/Appkey我肯定是拿不到了,这是不是就是说通过requests请求这条路行不通了?点下一页->加载->等10秒……想知道有没有什么比较快速的方法爬到想要的数据呢?
2 回答
临摹微笑
TA贡献1982条经验 获得超2个赞
[自问自答]我后来发现了,用chromedevtool其实可以看到页面本身请求数据时发送的appid/appkey,不过不是以这样的paramname呈现出来,所以一开始被我忽视了。实际上只要把这两个键值对加进header里,并加上chrome里看得到的payload信息,用requests发送POST请求,就可以直接调取数据库信息了。
梵蒂冈之花
TA贡献1900条经验 获得超5个赞
一般来讲,selenium跟requests的最大区别就是帮你解析并执行html,css,js等(耗时长)。其中解析js是你最希望的,如果你可以手动解析js填上Appid/Appkey,完全可以用requests完成。
添加回答
举报
0/150
提交
取消