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 an optional HTTP::Headers object reference as argument. The parser will update this header object as the various <HEAD> elements are recognized. If no header is given we will create an internal (and initially empty) header object. This header object can be accessed with the header() method.

The following header fields are initialized from elements found in the <HEAD> section of the 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. If not prompt attribute is given it will have '?' as the value.

X-Meta-Foo

All <meta> elements will initialize headers with the prefix "X-Meta-". If the element contains a http-equiv attribute, then it will be honored as the header name.

METHODS

The following methods (in addition to those provided by the superclass) are available:

$hp = HTML::HeadParser->new( [$header] )
$hp->parse( $text )

Parses some HTML text (see HTML::Parser->parse()) but will return FALSE as soon as parsing should end.

$hp->header;

Returns a reference to the HTML::Header object.

$hp->header( $key )

Returns a header value.

$hp->as_string;

Same as $hp->header->as_string

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-1997 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>

1 POD Error

The following errors were encountered while parsing the POD:

Around line 236:

You forgot a '=back' before '=head1'