Debian lenny version packages
[pkg-perl] / deb-src / libhtml-parser-perl / libhtml-parser-perl-3.56 / eg / htext
1 #!/usr/bin/perl -w
2
3 # Extract all plain text from an HTML file
4
5 use strict;
6 use HTML::Parser 3.00 ();
7
8 my %inside;
9
10 sub tag
11 {
12    my($tag, $num) = @_;
13    $inside{$tag} += $num;
14    print " ";  # not for all tags
15 }
16
17 sub text
18 {
19     return if $inside{script} || $inside{style};
20     print $_[0];
21 }
22
23 HTML::Parser->new(api_version => 3,
24                   handlers    => [start => [\&tag, "tagname, '+1'"],
25                                   end   => [\&tag, "tagname, '-1'"],
26                                   text  => [\&text, "dtext"],
27                                  ],
28                   marked_sections => 1,
29         )->parse_file(shift) || die "Can't open file: $!\n";;