5

casperJSのリモート デバッグ オプションを使用しようとしています。

これをポートで実行しています6666

$casperjs --remote-debugger-port=6666 myscript.js

デバッガーが起動し、URL で WebKit インスペクターにアクセスできるようになりました

http://localhost:6666/ 

最初の URL はabout:blank.

クリックすると、Web ページ インスペクターが読み込まれます。

_run()コンソールに入力すると、

参照エラー、_run が定義されていないエラー。

私はこれ以上先に進むことができません。どこかで修正が必要な場合はお知らせください。

また、CasperJS スクリプトに明示的なブレークポイントを設定する必要がありますか。もし私がしなければならないなら、どうやって?

更新 1

--remote-debugger-autorun=yes を試しました

$casperjs --remote-debugger-port=6666 --remote-debugger-autorun=yes myscript.js

これにより、ヘルプに記載されているようにスクリプトがすぐに実行されます。ただし、デバッガーは引き続き実行され、プロセスは終了しません。

出力

about:blank の下に要求された URL が表示されます。

about:blank または要求された URL をクリックすると、WebKit インスペクターが開きます。

しかし、私は再び立ち往生しています。

更新 2

また、phantomJS で移植したサンプルを実行してみました。

結果は同じです。空白の WebKit Inspector ウィンドウで立ち往生しています。

4

2 に答える 2

6

__run()の代わりに試してください_run()

「debugger;」と記述すると、設計時にブレークポイントを配置することもできます。あなたのスクリプトで。デバッガーはこれらの行で中断します。

現在調査中の別の問題があります- casper.exit() 関数はファントムプロセスを終了しません。次の行が表示されます。

Phantom::exit() called but not quitting in debug mode.

プロセスを手動で強制終了する必要があります...

于 2013-04-02T14:00:59.653 に答える
0

チケットATMが見つかりませんが、casperJSをデバッガモードで起動できないと思います。ただし、CasperJS を PhantomJS スクリプトのライブラリとして使用できます。

phantom.casperPath = '/usr/local/Cellar/casperjs/1.0.1/libexec/'; phantom.injectJs('/usr/local/Cellar/casperjs/1.0.1/libexec/bin/bootstrap.js');

于 2013-03-26T19:11:55.510 に答える