在Node webkit上使用phantom

我试图通过使用Phantom来抓取Node webkit中的dynamic内容。 我也添加了phantomjs envvariables。 当我运行应用程序,我得到一个版本不匹配错误:“未捕获的错误:模块版本不匹配。预计43,得到46。 通过运行nw:版本我得到以下版本:

  • nw.js v0.12.3
  • io.js v1.2.0
  • 铬41.0.2272.76

我应该如何解决这个错误? 如果您能够使用其他软件包来实现类似的function,请告诉我。

原生模块( phantom就是其中之一,我的经验是用lwip )必须重build才能在nw.js里面工作; 你用npm安装的是不兼容的。 还build议安装node.js版本匹配由nw.js(即io.js 1.2.0)使用的版本。

关于如何重build的说明: https : //github.com/nwjs/nw.js/wiki/build-native-modules-with-nw-gyp

基本上,你会的

$ npm install -g nw-gyp $ cd node_modules/phantom $ nw-gyp configure --target=0.12.3 $ nw-gyp build 

注意configuration中的“0.12.3”版本,因为这就是你的nw:版本显示的。 另外,根据您使用的操作系统,请注意不同的先决条件: https : //github.com/nwjs/nw-gyp


要在nw.js中做网页划分,我成功地使用了下面的堆栈(在Windows 7上):

  • nw.js 0.12.3
  • phantomjs模块与幻影1.9.8或2.0.1b
  • 节点 – 幻像 – 简单模块