www.farid-hajji.net banner

Farid Hajji

Perl: Einführung, Anwendungen, Referenz (2/e) [Support-Site]

Farid Hajji: Perl - Einführung, Anwendungen, Referenz
2., aktualisierte und erweiterte Auflage
Addison-Wesley Longman, ISBN 3-8273-1535-2

Ergänzung

html-parse.pl
#!/usr/local/bin/perl -w
# html-parse.pl -- Parsen von HTML-Text mit HTML::Parser.

use HTML::Parser;                         # CPAN-Modul
use HTML::Entities;                       # CPAN-Modul
use Data::Dumper;                         # Standardmodul

# Wir definieren zunächst eine Subklasse von HTML::Parser
# namens MyParser. Somit koennen wir Methoden ueberladen.
package MyParser;
@ISA = qw(HTML::Parser);

# Die start()-Methode wird bei jedem Start-Tag aufgerufen:
sub start {
    my ($self, $tag, $attr, $attrseq, $origtext) = @_;
    print "Recognized Tag: $tag\n";
    print "Attributes: \n", Data::Dumper::Dumper($attr);
    print "Sequence of Attributes: \n", Data::Dumper::Dumper($attrseq);
    print "Original Tag was: $origtext\n";
    print "-" x 60, "\n";
}

# Die end()-Methode wird bei jedem Ende-Tag aufgerufen:
sub end {
    my ($self, $tag, $origtext) = @_;
    print "Recognized End-Tag: $tag\n";
    print "Orignal End-Tag was: $origtext\n";
    print "-" x 60, "\n";
}

sub text {
    my ($self, $text) = @_;
    print "Recognized Text-Chunk:\n";
    print "[", HTML::Entities::decode($text), "]", "\n";
    print "-" x 60, "\n";
}

1;

# Unser Hauptprogramm verwendet nun diese abgeleitete Klasse:
package main;

my $p = MyParser->new();                  # Unser Parser
$p->parse_file($ARGV[0]);                 # Eine Datei parsen.
   

[Prev] [Up] [Relevant Chapter] [Next]

[Alte Quelle]


Last modified: $Date: 2006/05/18 12:55:48 $
FH. Search :: Sitemap :: Disclaimer :: Copyright :: Privacy
FreeBSD Logo