The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

HTML::HeadParser - Parse <HEAD> section of a HTML document

SYNOPSIS

 require HTML::HeadParser;
 $p = HTML::HeadParser->new;
 $p->parse($text) and  print "not finished";

 $p->header('Title')          # to access <title>....</title>
 $p->header('Content-Base')   # to access <base href="http://...">
 $p->header('Foo')            # to access <meta http-equiv="Foo" content="...">

DESCRIPTION

The HTML::HeadParser is a specialized (and lightweight) HTML::Parser that will only parse the <HEAD>...</HEAD> section of a HTML document. The parse() and parse_file() methods will return a FALSE value as soon as a <BODY> element is found, and should not be called again after this.

The HTML::HeadParser constructor takes a HTTP::Headers object reference as argument. The parser will update this header object as the various head elements are recognized.

The following header fields are initialized from elements found in the lthead> section of a HTML document:

Content-Base:

The Content-Base header is initialized from the <base href="..."> element.

Title:

The Title header is initialized from the <title>...</title> element.

Isindex:

The Isindex header will be added if there is a <isindex> element in the <head>. The header value is initialized from the prompt attribute if it is present.

http-equiv

Any other header field can be initialized from a <meta http-equiv="header" content="..."> element.

EXAMPLES

 $h = HTTP::Headers->new;
 $p = HTML::HeadParser->new($h);
 $p->parse(<<EOT);
 <title>Stupid example</title>
 <base href="http://www.sn.no/libwww-perl/">
 Normal text starts here.
 EOT
 undef $p;
 print $h->title;   # should print "Stupid example"

SEE ALSO

HTML::Parser, HTTP::Headers

COPYRIGHT

Copyright 1996 Gisle Aas. All rights reserved.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Gisle Aas <aas@sn.no>