4

Windows 7 マシンに次の単純な casperjs スクリプトがあります (実際の URL を指定することはできません - 申し訳ありません)。

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

casper.start('https://[XXX].de', function() {
    console.log(this.getCurrentUrl());
});

casper.run();

出力には、失敗したことが示されています。現在の URL は「about:blank」です。

[info] [phantom] Starting...
[info] [phantom] Running suite: 2 steps
[debug] [phantom] opening url: https://[XXX].de, HTTP GET
[debug] [phantom] Navigation requested: url=https://[XXX].de, type=Other, lock=true, isMainFrame=true
[warning] [phantom] Loading resource failed with status=fail: https://[XXX].de
[debug] [phantom] Successfully injected Casper client-side utilities
about:blank
[info] [phantom] Step 2/2: done in 39205ms.
[info] [phantom] Done 2 steps in 39309ms

Firefox RESTCLient Plugin で GET リクエストを送信すると、次のようになります。

Status Code: 200 OK
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection: close
Content-Type: text/html
Date: Tue, 11 Dec 2012 11:09:37 GMT
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
Server: unknown
Transfer-Encoding: chunked

私の質問は:

どうすればこれをデバッグできますか? これは既知の問題ですか?

4

2 に答える 2

4

casperjs に渡されたコマンド ライン引数が PhantomJS に渡されていないようです。私もこの問題に遭遇し、これを修正するために次のようにスクリプトを実行しました。

PhantomJS.exe --ignore-ssl-errors=true myscript.js

パラメータを逆に渡そうとしたとき

PhantomJS.exe myscript.js --ignore-ssl-errors=true

それは機能せず、直面しているのと同じエラーが発生します。

于 2013-06-28T18:22:55.147 に答える
3

phantomjsパラメータをに渡すには、バイナリcasperjsを直接更新できます( Linux またはWindows 上)。caspercasperjs.pycasperjs.bat

Linux の場合は、 を開き、コマンドを構成しているアレイをcasperjs.py更新して実行します。CASPER_COMMANDphantomjs

「--ignore-ssl-errors=yes」を追加するにCASPER_COMMANDは、次のように拡張します。

CASPER_COMMAND.extend(['--ignore-ssl-errors=yes']);

同じことについては、Windows または 詳細については、ここで見つけることができます

于 2013-09-19T12:14:27.893 に答える