リンク先の取得
HTML::Parserモジュールを使って、AタグのHREFの値を取得します。
use strict;
use HTML::Parser;
my $parser = HTML::Parser->new(
start_h => [\&start, 'tagname, attr'],
);
$/ = undef;
my $doc = <>;
$parser->parse($doc);
sub start {
my $tag = shift;
my $attr = shift;
return if $tag ne 'a';
my $href = $attr->{href};
return if $href =~ /^mailto/i;
print "$href\n";
}
HTML::LinkExtorモジュールというのもあります。
use strict;
use HTML::LinkExtor;
$/ = undef;
my $doc = <>;
my $p = HTML::LinkExtor->new();
$p->parse($doc);
foreach my $link ($p->links){
my ($tag, %attr) = @$link;
next if $tag ne 'a'; # Aタグ以外は無視
foreach my $url (values %attr) {
print $url, "\n";
}
}
