小编Sta*_*ith的帖子

使用梦魇/电子动态分页(页面抓取)

我正试图用Nightmare/Electron刮掉动态的寻呼网站.我没有看到执行do ...的方法,直到使用噩梦函数或用逻辑链式评估调用.

这是一个简单的代码示例,只是谷歌搜索一个短语并返回页面1中的结果hrefs.我希望这个代码继续为结果中的每个页面.

var Nightmare = require('nightmare');
var vo = require('vo');

vo(function* () {
  var nightmare = Nightmare({ show: true });
  var links = yield nightmare
    .goto('http://www.google.com')
    .wait('input[title="Search"]')
    .click('input[title="Search"]')
    .type('input[title="Search"]', 'Anequim Project')
    .click('input[name="btnK"]')
    .wait(600)
    .evaluate(function(){
        var linkArray = [];
        var links = document.querySelectorAll('h3.r a');
        for (var i = 0; i < links.length; ++i) {
            linkArray.push(links[i].getAttribute('href'));
        }
        return linkArray;
    });
  yield nightmare.end();
  return links;
})(function (err, result) {
  if (err) return console.log(err);
  console.log(result);
});
Run Code Online (Sandbox Code Playgroud)

javascript node.js web-scraping nightmare electron

7
推荐指数
1
解决办法
2745
查看次数

标签 统计

electron ×1

javascript ×1

nightmare ×1

node.js ×1

web-scraping ×1