#!/usr/bin/perl use HTML::TreeBuilder::XPath; use strict; use warnings; my $tree = HTML::TreeBuilder::XPath->new_from_file(\*DATA); for my $body ($tree->findnodes('//body')) { for my $element ($body->detach_content) { print $element->as_XML_indented; } } print "\n"; print "OK\n"; exit(0); __DATA__

foo

bar

trololo #### #!/usr/bin/perl use HTML::TreeBuilder::XPath; use strict; use warnings; my $tree = HTML::TreeBuilder::XPath->new_from_file(\*DATA); for my $body ($tree->findnodes('//body')) { for my $element ($body->detach_content) { eval { print $element->as_XML_indented; }; if ($@) { print STDERR qq(\n),$@,qq(\n); print STDERR qq(Failed HTML.\n); } } print "\n"; print "OK\n"; exit(0); __DATA__

foo

bar

trololo