2010/10/10
■PerlでWebアクセスし、ヘッダー情報やリダイレクト先を知る方法メモ【Perl・Javascriptメモ(17)】 1: use LWP::UserAgent; 2: my $ua=LWP::UserAgent->new; 3: my $req=HTTP::Request->new("GET",'http://yahoo.co.jp/'); 4: my $res=$ua->request($req); 5: my $html=$res->content;
でWebサイトのHTMLデータを取得出来ることはどこにでも書いてある。以下メモ ★(3)の前に$ua->proxy(['http','ftp'] => 'http://xxxx.xxx:8080/');などとproxy刺せる ★(4)の前に$req->proxy_authorization_basic("userid","password");で認証が必要なproxyも使える ★(4)の後 my @headers=$res->header_field_names; foreach my $Line (@headers){ print $Line.':'.$res->header($Line)."\n"; } とかでheader情報が取れる。TwitterのRSSにアクセスした時はここに残りアクセス可能回数とかも書いてある ★gzipで圧縮されているサイトは(5)の代わりに $res->decoded_content; でHTMLを取得出来る、圧縮されていないサイトも同じコードでOK ★ちまたにあふれている短縮アドレスや、転送サイトなどは上記でアクセスするといきなり転送先の情報が表示される。(4)の代わりに my $res=$ua->simple_request($req); とすれば、転送される前の情報が出てきて、headerに転送先URL書いてある。
■ ■ ■ コメント ■ ■ ■
■トラックバック■
この記事の総アクセス数(最後の書き込みまで):108
→本日の記事一覧に戻る
→Perl・Javascriptメモのカテゴリーに関する別の記事 (コメント数)
2010/04/17Perl 5は生き返った! 新たな前進を再開したPerl(1)
|
|