3

ブラウザに MozRepl をインストールし、起動時に起動して外部接続を受け入れるように設定しました。

私の質問は次のとおりです。1) コードを実行するだけでmy $mech = WWW::Mechanize::Firefox->new();、Firefox ブラウザが起動しますか?

2) 外部接続を受け入れるように MozRepl を設定しましたが、Firefox が起動していないときに、スクリプトが 1) のコードに到達すると、unable to connect, problem connecting to localhost, on port 4242. telnet localhost 4242起動していないFirefoxブラウザでやってデバッグしてみました。また、このエラーが発生しますCould not open connection to the host, on port 4242: Connect failed

この結果を期待する必要がありますか?

3) 上記の問題を考慮して、mechanize::firefox インスタンスを作成する前に、system() を使用してブラウザーを起動することにしました。ブラウザは起動できますが、mechanize::firefox インスタンスが作成されるコードには到達しません。

#where i manually fire up firefox.
system('"C:\Program Files\Mozilla Firefox\firefox.exe"'); 

my $mech = WWW::Mechanize::Firefox->new(ssl_opts => { verify_hostname => 0});
$mech->get( 'https://192.168.1.23' );   

mechanize::firefox インスタンスを作成してブラウザーを操作できるように、Firefox ブラウザーを起動できるようにするにはどうすればよいですか?

4

1 に答える 1

0

テストの前にブラウザを起動する必要があります。ブラウザは自動的に起動されません。

Firefoxを起動するのに時間がかかりますが、Firefoxを起動するとすぐにシステムが戻ります。すべてのプラグインなどを初期化するのに数秒かかります。

最も簡単な方法は、スリープを介して30秒間待機するか、whileループを開始して応答するまで待機することです。

ファイアウォールルールにより、mozreplへのアクセスが妨げられている可能性があります。デフォルトのポートは4242です。telnet経由でポートを確認してください。

telnet 192.168.1.23 4242
telnet 127.0.0.1 4242
于 2012-11-12T10:04:39.073 に答える