npm请求在阅读正文之前等待

时间:2017-02-14 21:21:22

标签: javascript npm npm-request

我正在尝试使用npm请求和cheerio来拉取网页并解析他们的HTML。这适用于根据请求加载html的情况。但我遇到的问题是网站首先加载加载屏幕,然后片刻后用新的信息/元素更新页面。

部分代码:

var url = 'website with loading screen prior to content.com';
var request = require('request');
request(url, function (error, response, body) {
  if (!error && response.statusCode == 200) {
    console.log(body) // Show the HTML for the Google homepage.
  }
})

我想要什么   - 请求能够等待特定元素显示在页面上然后读取正文。或者能够等待固定的秒数,然后阅读正文

其他选项 - 使用npm请求可能无法做到,这很好。如果是这种情况,请指点我正确的方向。我正在考虑的其他选项是使用webdriver.io或phantomjs。是否有推荐的行动方案?

1 个答案:

答案 0 :(得分:0)

不幸的是,没有办法将request配置为"等待"在获得响应之前启动请求之后。你要做的最好的事情是结账PhantomJS。它是一个无头浏览器,您可以使用它来加载和呈现页面,然后通过javascript访问动态生成的内容。

查看此answer以获取简要示例。