我在上一篇博客的代码基础上做了些优化和修改
上次的问题主要是网页上面offset的值我没有理解,导致爬取下来的答案都是那重复的几个
这次弄明白了,比如说我这个问题下面有1911个回答,如果offset=0的话,从第一个回答开始,网站会给你返回接下来的limit数量的回答,如果offset大于1911,那么不会有回答,我设置的limit为20,那么我只需要使offset的值20递增就可以了
至于这里的判断条件就是如果返回来的列表长度小于20,也就是说当offset递增到1900的时候,只会返回11个答案,我特意测试了一下
可以看到我这里的值是1908,只返回了3个答案
就可以了实际运行起来,得出1911个答案,完美
打开记事本查看,拉到最后,答案是对上的
这次数据太多了就没有保存至数据库里面
requests爬取知乎问题全部1911个回答
最新推荐文章于 2024-09-03 15:24:40 发布
博客作者解决了之前爬取知乎回答时因不理解offset值导致的重复问题。通过调整offset增量和limit值,成功获取到目标问题的1911个回答。当offset达到1900时,返回答案数量减少,标志着爬取结束。
摘要由CSDN通过智能技术生成