—package
HTML::Parse;
use
5.008;
#ABSTRACT: Deprecated, a wrapper around HTML::TreeBuilder
use
warnings;
use
strict;
our
$VERSION
=
'5.07'
;
# VERSION from OurPkgVersion
$IMPLICIT_TAGS $IGNORE_UNKNOWN $IGNORE_TEXT $WARN
)
;
require
Exporter;
@ISA
=
qw(Exporter)
;
@EXPORT
=
qw(parse_html parse_htmlfile)
;
# Backwards compatability
$IMPLICIT_TAGS
= 1;
$IGNORE_UNKNOWN
= 1;
$IGNORE_TEXT
= 0;
$WARN
= 0;
require
HTML::TreeBuilder;
sub
parse_html {
my
$p
=
$_
[1];
$p
= _new_tree_maker()
unless
$p
;
$p
->parse(
$_
[0] );
}
sub
parse_htmlfile {
my
(
$file
,
$p
) =
@_
;
my
(
$HTML
);
open
(
$HTML
,
"<"
,
$file
) or
return
;
$p
= _new_tree_maker()
unless
$p
;
$p
->parse_file(
$HTML
);
}
sub
_new_tree_maker {
my
$p
= HTML::TreeBuilder->new(
implicit_tags
=>
$IMPLICIT_TAGS
,
ignore_unknown
=>
$IGNORE_UNKNOWN
,
ignore_text
=>
$IGNORE_TEXT
,
'warn'
=>
$WARN
,
);
$p
->strict_comment(1);
$p
;
}
1;
__END__
=pod
=head1 NAME
HTML::Parse - Deprecated, a wrapper around HTML::TreeBuilder
=head1 VERSION
This document describes version 5.07 of
HTML::Parse, released August 31, 2017
as part of L<HTML-Tree|HTML::Tree>.
=head1 SYNOPSIS
See the documentation for HTML::TreeBuilder
=head1 DESCRIPTION
Disclaimer: This module is provided only for backwards compatibility
with earlier versions of this library. New code should I<not> use
this module, and should really use the HTML::Parser and
HTML::TreeBuilder modules directly, instead.
The C<HTML::Parse> module provides functions to parse HTML documents.
There are two functions exported by this module:
=over 4
=item parse_html($html) or parse_html($html, $obj)
This function is really just a synonym for $obj->parse($html) and $obj
is assumed to be a subclass of C<HTML::Parser>. Refer to
L<HTML::Parser> for more documentation.
If $obj is not specified, the $obj will default to an internally
created new C<HTML::TreeBuilder> object configured with strict_comment()
turned on. That class implements a parser that builds (and is) a HTML
syntax tree with HTML::Element objects as nodes.
The return value from parse_html() is $obj.
=item parse_htmlfile($file, [$obj])
Same as parse_html(), but pulls the HTML to parse, from the named file.
Returns C<undef> if the file could not be opened, or $obj otherwise.
=back
When a C<HTML::TreeBuilder> object is created, the following variables
control how parsing takes place:
=over 4
=item $HTML::Parse::IMPLICIT_TAGS
Setting this variable to true will instruct the parser to try to
deduce implicit elements and implicit end tags. If this variable is
false you get a parse tree that just reflects the text as it stands.
Might be useful for quick & dirty parsing. Default is true.
Implicit elements have the implicit() attribute set.
=item $HTML::Parse::IGNORE_UNKNOWN
This variable contols whether unknow tags should be represented as
elements in the parse tree. Default is true.
=item $HTML::Parse::IGNORE_TEXT
Do not represent the text content of elements. This saves space if
all you want is to examine the structure of the document. Default is
false.
=item $HTML::Parse::WARN
Call warn() with an appropriate message for syntax errors. Default is
false.
=back
=head1 REMEMBER!
HTML::TreeBuilder objects should be explicitly destroyed when you're
finished with them. See L<HTML::TreeBuilder>.
=head1 SEE ALSO
L<HTML::Parser>, L<HTML::TreeBuilder>, L<HTML::Element>
=head1 AUTHOR
Current maintainers:
=over
=item * Christopher J. Madsen S<C<< <perl AT cjmweb.net> >>>
=item * Jeff Fearn S<C<< <jfearn AT cpan.org> >>>
=back
Original HTML-Tree author:
=over
=item * Gisle Aas
=back
Former maintainers:
=over
=item * Sean M. Burke
=item * Andy Lester
=item * Pete Krawczyk S<C<< <petek AT cpan.org> >>>
=back
You can follow or contribute to HTML-Tree's development at
=head1 COPYRIGHT AND LICENSE
Copyright 1995-1998 Gisle Aas, 1999-2004 Sean M. Burke,
2005 Andy Lester, 2006 Pete Krawczyk, 2010 Jeff Fearn,
2012 Christopher J. Madsen.
This library is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
The programs in this library are distributed in the hope that they
will be useful, but without any warranty; without even the implied
warranty of merchantability or fitness for a particular purpose.
=cut