【发布时间】:2015-06-24 12:09:04
【问题描述】:
我正在尝试使用 Node.js / Cheerio 抓取 Instagram(使用 React 构建)。调试文档会显示返回的对象,但它看起来不像典型的响应。
我猜这与 React 有关。有没有办法解决这个问题,并拉出渲染的 DOM 来用 Cheerio 解析?还是我完全错过了什么?
【问题讨论】:
-
没有代码,没有确切的错误信息,没有确切的重现步骤,我猜你错过了how-to-ask。当然,使用您的键盘和调试器,您甚至可以使用
React和Cheerio抓取使用React构建的网站。但是您可能需要一些更强大的工具,例如PhantomJS或SeleniumHQ能够运行脚本、等待它们执行等。 -
这是一个带有二元答案的概念性问题——感谢您的无益。
-
亲爱的@Kyle,乐于助人是基于意见的。我相信你的问题还不够好,你可以改进它。我在您的问题中看不到“概念”。二进制答案是肯定的,这是可能的。但是,调试文档的确切含义是什么?什么文件?错误信息是什么? jsFiddle 重现?
-
很公平。我已经在下面发布了答案。代码如下,减去用户代理。不幸的是,没有 jsFiddle,因为这是服务器端代码,也没有错误消息,因为返回了响应,只是不是 Cheerio 可解析的(React 创建了一个虚拟 DOM)。
标签: node.js web-scraping reactjs cheerio