3

我尝试使用以下命令运行我的 test.js 文件:

 DEBUG=nightmare node --harmony test.js 

并输出:

 nightmare queueing action "goto" for http://google.com +0ms
 nightmare queueing action "wait" +2ms
 nightmare queueing action "screenshot" +0ms

测试.js:

 var Nightmare = require('nightmare');

 var google = new Nightmare()
    .goto('http://google.com')
    .wait()
    .screenshot("./screen.png")
    .run(function(err, nightmare) {
        if (err) return console.log(err);
            console.log('Done!');
    });

没有截图和链接访问。有什么想法吗?

注意:我正在使用 Linux 来宾开发 Virtual Box。

4

1 回答 1

1

尝试:

var google = new Nightmare({ show: true })

您将能够查看链接是否打开。

对于调试尝试使用以下代替:

DEBUG=nightmare:actions node --harmony test.js

这将向您显示代码在您的情况下抛出错误:

nightmare:actions Not enough arguments for .wait()

.wait() 需要时间间隔或返回 true 或 dom 元素的函数。

尝试类似:

.wait(2000) // For 2 sec wait
.wait("input[type='text'][title='Search']") // To wait till the search box is loaded
.wait( () => {
    // Check Something
    return true
})

请检查上述帮助是否解决了您的问题。

于 2015-11-19T05:19:14.507 回答