Web::Scraper 使用例

scraperコマンド、矢印キーで履歴検索可に。

$ sudo apt-get install libterm-readline-gnu-perl

 

タイトルとリンクを取得する例

my $scraper = scraper {
  process '//td/small/a',
    'result[]' => { 'title' => 'TEXT', 'link' => '@href' };
};

 

入れ子にして使用。正規表現による抽出、後処理。

process '//td', 'pictex[]'=> scraper {
  process '//img[@src=~/ocean/][@alt=~/^[jJ]apan/]', 'images[]'=>'@src';
  process '//a', 'links[]' => ['@href', sub {s/#.*?$//g}];
};

 

テキストを正規表現で検索

my $scraper = scraper {
  process '//*[@id="mw-content-text"]/table[2]/tr/td/table/tr','list[]' => scraper {
    process q{//td[5]/div[text() =~ /[都道府県]/]}, 'prefecture[]' => 'TEXT';
  };
};