运行 本地文件夹中的 phantomjs 和 casperjs

Run phantomjs and casperjs on local folder

我正在寻找一个问题的解决方案。我想安装和使用库 casperjs 而不在机器上全局安装任何东西。

首先我尝试通过 npm install casperjs (https://www.npmjs.com/package/casperjs)

安装

显然,这是错误消息:casperjs : commande introuvable

我尝试使用静态路径:../../node_modules/casperjs/bin/casperjs scriptCasperJS.js

新错误:Fatal: [Errno 2] No such file or directory; did you install phantomjs?

所以我从 website 下载并提取 phantomjs 并将我的文件夹导出到环境变量:export PHANTOMJS_EXECUTABLE=/home/xxxxxxxxxx/node_modules/phantomjs-2.1.1-linux-x86_64/bin/phantomjs

没问题,但出现新错误:CasperError: Can't find module casperjs

这可能来自我的代码:

var casper = require("casperjs").create({    
    verbose: false,
    logLevel: "debug"
});

有什么想法..?我必须改变使用 casperjs 编码的方式吗?

预先感谢您的帮助。

编辑:为了更好地理解

- myfolder
   +- modules
   |  +- phantomjs-2.1.1-linux-x86_64
   |  | +- bin
   |  | | +- phantomjs 
   +- node_modules
   |  +- casperjs    
   |  | +- bin
   |  | | +- casperjs    
   +- scripts
   |  +- myscriptname   
   |  | +- scriptCasperJS.js   
   +- package.json  

编辑:看来我误解了你的问题。这是新答案:

要通过 casperJS 在脚本 运行 中包含 Casper 模块,正确的要求是

var casper = require("casper"); // Not "casperjs" !

旧答案:

CasperJS 不是 NodeJS 模块。它在他们的文档中明确指定。 (见本节底部的红色警告:http://docs.casperjs.org/en/latest/installation.html#installing-from-npm)。

提供 NPM 安装只是为了方便。您将无法执行要求,只能将其作为外部命令调用。