LWP::Simple 練習
単純に WEB ページを保存する
#!/usr/bin/perl use strict; use warnings; use LWP::Simple; use utf8; my $url = 'http://www.excite.co.jp/'; # WEB ページを保存する # 保存された WEB ページの文字コードはオリジナルと同じ getstore($url, 'index.html');
getstore
URLにより識別されるドキュメントを取得し、ファイルに格納します。戻り値はHTTP応答コードです
get, head, getprint, getstore, mirror - 手続き型LWPインターフェース
LWP::Simple の応用
http_head.pl で保存する。
#!/usr/bin/perl use strict; use warnings; use LWP::Simple; my $url = 'http://www.excite.co.jp/'; # HTTP ヘッダを取得する my($content_type, $document_length, $modified_time, $expires, $server) = head($url); print "$content_type\n"; print "$document_length\n"; print "$modified_time\n"; print "$expires\n"; print "$server\n";
実行結果は次の通り。
% chmod u+x http_head.pl % ./lwpsimple_head.pl text/html 79376 Use of uninitialized value in concatenation (.) or string at ./lwpsimple_head.pl line 12. Use of uninitialized value in concatenation (.) or string at ./lwpsimple_head.pl line 13. Netscape-Enterprise/6.0
該当する項目が null の場合もあるので、12行目と13行目にある $modified_time と $expires でエラーが発生している。