1

任何人都知道是否以及如何从 phantomjs shell(又名InteractiveModeREPL)中运行 casperjs?

phantomjs 外壳

我也尝试过将直接路径传递给 casper.js 模块,但这也没有奏效。

进展/更新:

  • 试过phantomjs.injectJs('C:/casperjs/module/casper.js');了,但Error: Cannot find module 'colorizer'我想我快接近了。
  • 这让我更接近但仍然缺少路径:
    • phantomjs.injectJs('C:/casperjs/module/bin/bootstrap.js')
      • 错误与Cannot find package.json at C:/package.json
    • 好的,看起来我可以在启动 phantomjs 时传递 --casper-path 选项(参见 - casper/bin/bootstrap.js:第 189 行)。
    • 好的,那行得通。(通过该选项不起作用,但设置幻影内部的路径确实如此)。
4

1 回答 1

3

因此,要让这些东西首先在 phantomjs shell 中运行,您需要casperPath在 phantom 全局对象中设置一个变量。

phantom.casperPath = "C:/casper";

然后你需要注入 caspers 的bootstrap.js文件。

phantom.injectJs("C:/casper/bin/bootstrap.js");

现在您可以实例化一个 casper 对象并在 shell 中使用它。

var casper = require("casper").create();

请享用。

于 2012-10-27T16:47:51.773 回答