1

タスクは非常に単純です: URL にアクセスし、結果に基づいて解析します。エラー (404、500 など) が発生した場合は、適切な処置を行ってください。最後のピースは、私が問題を抱えているものです。
現在使用している両方のコードをリストしました。長い方 (LWP+TreeBuilder) は両方の条件で機能します。短い方 (TreeBuilder) は最初の条件では機能しますが、エラー条件では機能しません。TreeBuilder を使用していて、サイトが 404 またはその他のエラーを返した場合、スクリプトは単純に終了します。何か案は ?

機能するより長いコード

LWP::Simple を使用します。
LWP::UserAgent を使用します。
HTML::TreeBuilder を使用します。

$url="http://some_url.com/blahblah" ;
$response = LWP::UserAgent->new->request( HTTP::Request->new( GET => $url ));
    if ($response->is_success) {

    $p = HTML::TreeBuilder->new();
    $p->parse($response->content);

    } そうしないと {

    warn "$url を取得できませんでした: ", $response->status_line, "\n";

    }

ない短いもの

HTML::TreeBuilder を使用します。

$url="http://some_url.com/blahblah" ;

$tree = HTML::TreeBuilder->new_from_url($url) ;
4

2 に答える 2