Web::Scraperを使ってみる
hinetmania改
Gungho::Inlineを使ってみるの記事ではcssセレクタを使ってみています.cssセレクタは便利だけど,おまじないが多くてちょっと「いやん」とか思っていたのですが,宮川さんが作られたWeb::Scraperを使うと美しく書けます.こんな感じ.
source
#!/usr/local/bin/perl use warnings; use strict; use URI; use Web::Scraper; use Data::Visitor::Encode; my $dve = new Data::Visitor::Encode; my $scraper = scraper { process 'td.bgltsub+td.bgwhite', 'descr[]' => 'text'; result 'descr'; }; my $quake = $scraper->scrape( URI->new("http://www.hinet.bosai.go.jp") ); $quake = $dve->utf8_off($quake); map { print $_, "\n" } @$quake;
debug用に,配列にデータを入れてるけど,コードに渡せばさらにスマートにいけるかな.Gunghoもバージョンアップしてるし,hinetmaniaのスクリプトもかきなおしてみよっと.ちなみに,このスクリプトの実行結果はこんな感じになります.
% ./hinet2.pl 宮城県北部 2007/05/10 22:32:33.87 38.847N 141.639E 73.6km 2.7
それはそれとして
寝る.風邪ひいたみたい.おやすみなさい.