スクレイピングして何すんだと言われましても、スクレイピングがしたくてしょうがないmattnです。
今日、WWW::Mechanize::Plugin::Web::Scraperというcpanモジュールを(otsuneさんのブクマ経由で)見つけました。モジュール名の通り、WWW::MechanizeからWeb::Scraperするプラグインです。
先日書いた「何時でも何処でも携帯で「はてなスター」チェック」では、両方使ってagentを切り替えたりしてましたが、これを使うともっとスマートに書けるようになります。今日は小ネタでソースだけ。
use strict;
use warnings;
use WWW::Mechanize::Pluggable;
use YAML::Syck;
my $username = 'xxxxx';
my $password = 'xxxxx';
my $mech = WWW::Mechanize::Pluggable->new();
$mech->get('http://www.hatena.ne.jp/login?location=http://s.hatena.ne.jp/');
$mech->submit_form(
form_number => 1,
fields => {
name => $username,
password => $password,
}
);
$mech->get("http://s.hatena.ne.jp/$username/report");
my $stars = $mech->scrape('span.entry-title a', 'stars[]',
{ title => 'TEXT', link => '@href' }
);
warn Dump $stars;
いい感じにキレイですね。



Leave a comment