use strict;
use HTML::TreeBuilder;
my $tree = HTML::TreeBuilder->new;
$tree->parse_file("test.html");
my $content_as_html = sub {
join "", map { ref($_) ? $_->as_HTML : $_ } shift->content_list;
};
for my $element ($tree->look_down(_tag => "a", href => qr/./)) {
my $content = $element->$content_as_html;
my $href = $element->attr("href");
$content =~ s/\n//g;
print ">> $href, $content\n"
}