Perlで指定したURLのHTMLを取得

スポンサーリンク
スポンサーリンク

Perlで指定したURLのHTMLを取得するサンプルです。

以下のモジュールを使用します。無い場合はCPANからインストールしてください。
utf8
Encode
http://search.cpan.org/~gaas/libwww-perl-6.05/lib/LWP/UserAgent.pm” target=”_blank”>LWP::UserAgent/a>
HTTP::Request
HTTP::Response
HTTP::Response
Encode::Guess

root権が無い場合などのように、システムにインストールできない場合は、perlモジュールをローカルにインストールして利用する方法を参照して下さい。
例えば、自分のホームディレクトリ下にモジュールをインストールできます。

指定したURLのHTMLを取得するサンプル

use utf8;
use Encode;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Response;
use Encode::Guess;
$body = GetContents( "取得したいページのURL" );
print $body;
sub GetContents {
    my $url = $_[0];
    my $proxy = new LWP::UserAgent;
    my $req = HTTP::Request->new('GET' => $url);
    my $res = $proxy->request($req);
    my $str = $res->content;
    my $enc = guess_encoding($str, qw/euc-jp shiftjis 7bit-jis utf8 iso-2022-jp iso-2022-jp-1/);
    unless(ref $enc){
        $str = decode("shiftjis", $str);
    }else{
        $str = decode( $enc->name , $str );
    }
    return $str;
}

コメント

タイトルとURLをコピーしました