如何使用Python下载新闻文章中的所有评论?

2024-10-03 19:26:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我不得不承认我不太懂html。我试图用python从在线新闻中的一篇文章中提取所有评论。我尝试使用python BeautifulSoup,但似乎注释不在html源代码中,而是出现在inspect元素中。比如你可以在这里查一下。http://www.dailymail.co.uk/sciencetech/article-5100519/Elon-Musk-says-Tesla-Roadster-special-option.html#comments

我的密码在这里,我被击中了。在

        import urllib.request as urllib2
        from bs4 import BeautifulSoup
        url = "http://www.dailymail.co.uk/sciencetech/article-5100519/Elon-Musk-says-Tesla-Roadster-special-option.html#comments"
        page = urllib2.urlopen(url)
        soup = BeautifulSoup(page, "html.parser")

我想这么做

^{pr2}$

但是源代码中没有这个信息。在

有什么建议吗,如何前进?在


Tags: http源代码htmlwwwarticleelonukco
2条回答

我没有尝试过这样的事情,但是我的猜测是如果你想直接从“页面源代码”获得它,你需要像selenium这样的东西来实际导航页面,因为页面是动态的。在

或者,如果您只对评论感兴趣,您可以使用英国每日邮报的api获取评论。在

注意查询字符串“max=1000”“&order”等中的项目。如果API对最大“max”值有限制,则可能还需要使用变量“offset”沿side max查找所有注释。在

我不知道API是在哪里定义的,你可以通过查看你的浏览器在搜索网页时发出的网络请求来查看它。在

您可以从http://www.dailymail.co.uk/reader-comments/p/asset/readcomments/5100519?max=1000&order=desc&rcCache=shout获取该页面的JSON格式的注释数据。似乎每篇文章的url中都有类似“5101863”的内容,您可以使用swap这些数字来表示您想要评论的每个新故事。在

谢谢你弗雷德曼。我不知道这个API。似乎我们只需要给文章id,我们可以从文章的评论。这就是我要找的解决方案。在

相关问题 更多 >