- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:mechanizeのタイムアウト処理について)
mechanizeのタイムアウト処理について
このQ&Aのポイント
- perl+mechanizeでスクレイピングスクリプトを書いています。$mech->reload()時に、サーバーからの反応がない場合、エラーメッセージが表示されます。
- $mech->reload()時に、5秒待ってもサーバーからの反応がない場合、次の処理に進む方法はありますか?
- $mechの生成時にタイムアウト時間を設定することもできますが、$mech->reload()時のみ5秒間のタイムアウト時間を設定したいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
#!/usr/bin/perl use warnings; use strict; use WWW::Mechanize; my $mech = WWW::Mechanize->new(); print "default ", $mech->timeout, "[sec]\n"; $mech->timeout(5); print "modified ", $mech->timeout, "[sec]\n"; --- default 180[sec] modified 5[sec]
お礼
_--_1l1_1_さん ありがとうございます。タイムアウトを短くしたい処理の前で$mech->timeout(5);を実行し、処理が終わったら、$mech->timeout(デフォルト秒);に戻せばいいのですね。 トライしてみます。ありがとうございました。