use warnings;
use strict;
use HTML::TreeBuilder;
my $html = do {local $/; };
my $tree = HTML::TreeBuilder->new ();
$tree->parse ($html);
$tree->eof ();
$tree->elementify();
my ($title) = $tree->find ('title');
my @h1 = $tree->find ('h1');
print $title->as_text (), "\n";
print $_->as_text (), "\n" for @h1;
__DATA__
More efficient use of HTML::TokeParser::Simple perlquestion id:560199
Header 1
First paragraph
Header 2
Second paragraph
Level 2 header 1