我知道这个问题的标题看起来很模糊!但这就是它。梦魇JS不工作
我安装我的生产服务器,其中有phantomjs正常工作,然后我通过npm install nightmare
安装的噩梦,我可以看到它在node_modules上的NodeJS,我试图通过开发GitHub上列出的例子:
var Nightmare = require('nightmare');
var nightmare = Nightmare({ show: true })
nightmare
.goto('http://yahoo.com')
.type('input[title="Search"]', 'github nightmare')
.click('#uh-search-button')
.wait('#main')
.evaluate(function() {
return document.querySelector('#main .searchCenterMiddle li a').href
})
.end()
.then(function (result) {
console.log(result)
})
没有任何事情发生,脚本没有输出任何东西,我简化了脚本到一个简单的单个转到,我的服务器上的页面,当我通过脚本运行时从未调用页面node file.js
我有CentOS 6.7,phantomjs 1.1我也在新的CentOS上测试过它7安装与最新版本的phantomjs,同样的事情。
我是否缺少某种先决条件?如何调试的问题,因为node script.js
不给任何输出
更新:显然,问题是,电子,用于通过噩梦“而不是phantomjs的”需要一个图形环境,这就是为什么它不能运行我的环境。
谢谢你,我还以为你的答案后,起初它,COS显然本来应该的原因,我在全球安装了电子预建的,我遇到了一些依赖错误,当我我试图运行电子,我安装了所需的库,但噩梦仍然无法正常工作,我试过'NODE_DEBUG =噩梦节点script.js'仍然没有输出 同样运行'电子'也不给我任何输出,I尝试'电子--help',不知道它是否接受这个参数,但无论如何不输出 –
尝试'DEBUG = nightmare * node script.js',看起来像库使用'debug'模块,而不是内置的调试日志 – hassansin
谢谢,那显示了错误,也许我已经得到了一些东西g,我是否需要有一个GUI环境才能运行?它需要X11运行吗?因为它需要的一个库属于X11我认为'libgtk-x11',我得到错误:'电子子进程退出代码1:一般错误 - 您可能需要xvfb'。 –