通过Nightmare.js在linux服务器上无头地运行电子(原子壳)

Ray*_*jax 7 node.js headless-browser xvfb nightmare electron

我正在构建一个scraper,以使JS单页面应用程序易于抓取.

对PhantomJS(内存泄漏,过时的webkit,不死生物进程以及许多其他问题)感到非常沮丧之后,我决定改用NightmareJS,它可以做同样的事情,但在引擎盖下使用Electron.Electron有很多优点(使用最新的铬,速度要快得多)但它需要X服务器才能运行.

因为我需要让它在ubuntu服务器下运行,所以我遵循了这个要点.现在我有一个伟大的EC2实例,一切都准备好运行无头电子

xvfb-run electron
Run Code Online (Sandbox Code Playgroud)

关键是我需要通过nightmareJS运行它(我将在node.js服务器脚本中使用).我想知道如何将参数传递给噩梦以便通过svfb启动电子

小智 4

我不知道是否有更好的方法,但至少对于我的作品来说,使用 xvfb-run 命令运行主进程:

$ xvfb-run node --harmony simple-service.js
Worker 12153 is online
Worker 12155 is online
Worker 12154 is online
Worker 12156 is online
Run Code Online (Sandbox Code Playgroud)