微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用python爬取知乎全部回答

小编给大家分享一下如何使用python爬取知乎全部回答,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!


1.代码逻辑

这个核心代码是直接对上篇推文中使用的代码进行修改,删去了对书籍名称提取添加了爬取内容的写入文件,小伙伴只要把getAnswers(问题号)里的传入参数改成想爬取回答的问题号,剩下的事情就只需要等待了

什么是知乎问题号?

  • 查看知乎网页地址,question后的一串数字就是问题号    

    如何使用python爬取知乎全部回答

def getAnswers(qid):
    offset = 0
    num = 1
    f = open("知乎回答%s.txt" % qid, "a")
    while True:
        qid = qid
        print('Offset =', offset)
        # 知乎api请求
        data = getAnser(qid, offset)
        print(data)
        if len(data['data']) == 0:
            break
        for line in data['data']:
            # 保存回答数据
            content = line['content']
            pattern = re.compile(r'<[^>]+>', re.S)
            result = pattern.sub('', content)
            print(result)
            f.write("\n【第%d个回答】" % num)
            num += 1
            f.write(result)
        offset += 20
        time.sleep(1)
    f.close()

getAnswers(62096167)
   

2.应用程序版本

对于不了解爬虫的小伙伴,只需要打开一行数据爬取知乎回答.exe修改问题号和选择保存路径,就可以将该知乎问题下的所有回答保存到当前路径下,如下图所示

如何使用python爬取知乎全部回答

如何使用python爬取知乎全部回答

以上是“如何使用python爬取知乎全部回答”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程之家行业资讯频道!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐