我目前正在学习如何使用 NightmareJS 。我在运行下面的代码时发现性能太慢了。获得输出需要30秒。我做错了吗?
此外,我尝试将wait()
与选择器一起使用,但这并没有多大帮助。
我不确定这是否与我的互联网连接有关,但是,使用谷歌浏览器打开同一个网站并执行相同的任务比使用梦魇更快。
Soruce Code
var Nightmare = require('nightmare');
var after;
var before = Date.now();
new Nightmare({
loadImages: false
}).goto('https://www.wikipedia.org/')
.type('#searchInput', process.argv[2])
.click('input[name="go"]')
.wait()
.url(function(url) {
after = Date.now();
console.log('>>> [' + (after - before) / 1000.0 + 's] ' + url);
})
.run(function(err, nightmare) {
if (err) console.log(err);
});
输出
node n02_extract_wiki_link.js "node.js"
>>> [31.227s] https://en.wikipedia.org/wiki/Node.js
我目前的环境如下所示。
Mac OS X 10.10.4
node v0.12.5
PhantomJS 2.0.0
nightmare@1.8.2