Web::Scraper の filter が便利 - ablog のコードを実行したら、
Error GETing http://... Internal Server Error at ./bar.pl line 50
という具合に、Internal Server Error が発生するページがあって、そこで異常終了してしまった。
Perlゼミ(サンプルコードPerl入門) を参考に例外処理を入れて、
my $detail; eval{ $mech->get("http://foo.ablog.co.jp/foo-bar/$_); # move to detail page $detail = $detail_scraper->scrape($mech->content); # scrape detail page }; print "$@\n" if( $@ );
Internal Server Error が発生しても最後まで処理を行うようにしてみた。