#!/usr/bin/perl -w
######################################################################
# (c) Michael Schilli 1999
######################################################################

use HTML::TreeBuilder;

$tree = HTML::TreeBuilder->new();     # TreeBuilder erzeugen
$tree->parse_file("document.html");   # Datei parsen

$tree->traverse(\&callback);          # Parse-Baum durchwandern

$tree->delete();                      # Speicher freigeben

###############################################################
sub callback { 
###############################################################
    my($node, $start, $depth) = @_;

        # Ist $node kein HTML::Element-Objekt, ist's ein Stück 
        # Text - aber nur HTML::Element-Objekte sollen 
        # interessieren
    return 1 unless ref($node);

        # Kein Interesse an schließenden Tags
    return 1 unless $start;

    if($node->tag eq "title") { # Aha! Ein öffnendes TITLE-Tag!
        print "Titel: @{$node->content()}", "\n";
        return 0;               # Parse-Vorgang beenden    
    }

    1;                          # Weitermachen
}
