use HTML::TreeBuilder; my $tree = HTML::TreeBuilder->new(); $tree->parse_file($filename); # Then do something with the tree, using HTML::Element # methods -- for example: $tree->dump # Finally: $tree->delete;
HTML::TreeBuilder is the module that builds the parse trees. (It uses HTML::Parser to do the work of breaking the HTML up into tokens.)
The tree that TreeBuilder builds for you is made up of objects of the class HTML::Element.
If you find that you do not properly understand the documentation for HTML::TreeBuilder and HTML::Element, it may be because you are unfamiliar with tree-shaped data structures, or with object-oriented modules in general. Sean Burke has written some articles for The Perl Journal ("www.tpj.com") that seek to provide that background. The full text of those articles is contained in this distribution, as:
Readers already familiar with object-oriented modules and tree-shaped data structures should read just the last article. Readers without that background should read the first, then the second, and then the third.
perldoc HTML::Tree You can also look for information at:
<http://stackoverflow.com/questions/tagged/html-tree>
If you have a question about how to use HTML-Tree, Stack Overflow is the place to ask it. Make sure you tag it both "perl" and "html-tree".
The book Perl & LWP by Sean M. Burke published by O'Reilly and Associates, 2002. ISBN: 0-596-00178-9
It has several chapters to do with HTML processing in general, and HTML-Tree specifically. There's more info at:
http://www.oreilly.com/catalog/perllwp/ http://www.amazon.com/exec/obidos/ASIN/0596001789
The best way to send a patch is to make a pull request there.
Thanks to Chicago Perl Mongers (http://chicago.pm.org) for their patches submitted to HTML::Tree as part of the Phalanx project (http://qa.perl.org/phalanx).
Thanks to the following people for additional patches and documentation: Terrence Brannon, Gordon Lack, Chris Madsen and Ricardo Signes.
Original HTML-Tree author:
Former maintainers:
You can follow or contribute to HTML-Tree's development at <https://github.com/kentfredric/HTML-Tree>.
Except for those three TPJ articles, the whole HTML-Tree distribution, of which this file is a part, is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Those three TPJ articles may be distributed under the same terms as Perl itself.
The programs in this library are distributed in the hope that they will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.