批量爬取知乎回答
========
灵魂拷问
-
你有多久没读过一本书了?你知道什么书最值得读吗?
-
你有多久没看过一部电影了?你知道什么电影最值得看吗?
有人说,我知道可以去看豆瓣评分,按照评分高低排序选书,但是往往评分高的输却不容易阅读,比如说评分高的不一定容易理解,比如下图介绍的《量子力学》,评分高达9.6,五星好评,可惜工作时间繁忙阻碍了我与它的交流(不是智商)
[外链图片转存中…(img-XZMgMrl3-1712975310878)]
《量子力学》评分9.6分
这时我想到了学历平均985,年薪平均百万的知乎平台,这里人才遍地推荐的书单准没错。在知乎里搜索相关书单推荐,但是这些知乎推荐动则上千条回答,不知道认准谁的回答好,要么寥寥无几的回答不一定具有参考性,所以行哥想如果我将知乎里的所有回答爬取下来进行统计,选择大家推荐最多的书籍或电影来升华自己不就实现精准升华了嘛
于是行哥花了0.1秒的时间想到了爬虫,使用10000秒的时间写了代码,爬取了知乎下5646个回答,相当于有5646个年薪百万大佬给我的书单进行投票。获得数据后进行高频排序,图表展示,检查书单前十名哪些已经读过,哪些还没读,看看我与知乎年薪百万的差距还差几本书的距离
no bb show your code
====================
这里是核心代码展示,主要就是将知乎的问题号作为参数传入函数,然后进行批量爬取回答,使用正则表达式将每个回答里包含书名号的书籍名或者电影名提取出来,最后在保存的csv即可。
- 代码太长,需要完整源码的可以见文末福利分享
# 公众号:一行数据
# 所有源码,python资料,人工智能资料都可以在一行数据里领取
def getAnswers(qid):
# 获取所有书籍和回答数据
offset = 0
book_data = {}
while True:
qid = qid
print(‘Offset =’, offset)
# 知乎api请求
url = “https://www.zhihu.com/api/v4/questions/{}/answers?include=content&limit=20&offset={}&platform=desktop&sort_by=default”.format(
qid, offset)
res = requests.get(url, headers=headers)
res.encoding = ‘utf-8’
data = res.json()
if len(data[‘data’]) == 0:
break
for line in data[‘data’]:
# 保存回答数据
content = line[‘content’]
result = re.findall(r’《(.*?)》', content)
for name in result:
book_data[name] = book_data.get(name, 0) + 1
offset += 20
# 保存爬取的内容
for i in book_data.keys():
new_data = {}
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
涵盖了95%以上前端开发知识点,真正体系化!**
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)
![img](https://i-blog.csdnimg.cn/blog_migrate/bd66557b059ac71c814eae1647c3d449.jpeg)