HTMLからデータを抜き出すのに、HTML::TreeBuilder(::XPath)を使って試してみた。
#準備
my $tree= HTML::TreeBuilder::XPath->new;
$tree->parse_file('file.html');
#階層付きのダンプ(後で使うアドレスも表示される)
$tree->dump;
#全部の<a>を抜き出す
for my $link ($tree->findnodes('//a')
{
print $link->attr('href');
print $link->as_text;
}
#アドレスを指定して要素を引っ張ってくる
print $tree->address('0.0.3.5.8.0.0.2')->as_text;
"リニューアル"と称してフォーマットが変わっても、dumpしてアドレス調べ直せばそれでおしまい。正規表現つかってparseするのは労力の無駄以外のなにものでもないですね
最近のコメント