在scrapy中获取disqus评论数量的最佳方法是什么?

2 投票
2 回答
693 浏览
提问于 2025-04-18 08:58

我刚开始学习使用scrapy,想了解在这种情况下的最佳实践。Scrapy是用来从网页上选择元素的工具,可以通过CSS或XPath来实现。Disqus的评论似乎是通过iFrame加载的,这让抓取变得更加困难。我知道他们有一个API,但有没有办法通过xpath/css或者其他简单的选择器来抓取这些评论呢?

这里有一个示例帖子: http://www.ibtimes.com/who-aaron-ybarra-suspected-seattle-pacific-university-shooter-obsessed-columbine-1595326

我尝试使用Disqus评论数量的xpath,但似乎没有效果。

In [36]: sel.xpath('//*[@id="main-nav"]/nav/ul/li[1]/a/span[1]').extract()
Out[36]: []

有没有其他方法可以获取评论数量?在这种情况下,最佳策略是什么呢?

2 个回答

0

你需要使用一种无头浏览器。可以试着导入一些模块,比如 scrapy-selenium

0

Disqus 是一种评论系统,它通常嵌入在第三方网站的一个叫做 iframe 的框架里。通过查看这个 iframe 的 "src" 属性,你可以找到它的链接,然后就可以像平常一样访问它。

撰写回答