1

phantomjs シェル (別名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
    • OK、phantomjs の起動時に --casper-path オプションを渡すことができるようです (- casper/bin/bootstrap.js: 189 行目を参照)。
    • うまくいきました。(オプションを渡しても機能しませんでしたが、ファントム内のパスを設定すると機能しました)。
4

1 に答える 1

3

したがって、これを phantomjs シェル内で実行するには、最初casperPathに phantom グローバル オブジェクトに変数を設定する必要があります。

phantom.casperPath = "C:/casper";

次に、caspers のbootstrap.jsファイルを inJect する必要があります。

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

これで、キャスパー オブジェクトをインスタンス化し、シェルでそれを操作できます。

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

楽しい。

于 2012-10-27T16:47:51.773 に答える