Brought on by laziness, of having to get the web page into a variable, and then create the object for HTML::TokeParser, I knew there had to be a better way, while reading Object Oriented Perl, I decided to give it a try. Some of the items I want to change is to check for errors, and to allow files or actual html data passed to new(), not just a url, but that is just icing on the cake.
package HTML::TokeParser::URL;
use strict;
use warnings;
BEGIN {
use HTML::TokeParser;
use LWP::Simple qw(get);
our @ISA = qw(HTML::TokeParser);
}
sub new {
my $proto = shift;
my $class = ref($proto) || $proto;
my $page = get(shift);
my $self = HTML::TokeParser->new(\$page);
bless ($self, $class);
return $self;
}
1;
Updated: Better (updated!) version of this on perlmonks here.
success (Score:1)
In LWP OO terms:
use LWP; ...
my $resp = LWP::UserAgent->new->get($url);
die "GRAH! ", $resp->status_line unless $resp->is_success;
... HTML::TokeParser->new( $resp->content_ref )
Re:success (Score:1)
Can't locate object method "get" via package "LWP::UserAgent"(perhaps you forgot to load "LWP::UserAgent"?) at HTML/TokeParser/URL.pm line 18.
Re:success (Score:1)
Re:success (Score:1)
I guess I could manualy upgrade it manualy.
I did check this on a FreeBSD box, and it works! Thanks for the suggestion.
Re:success (Score:1)
Re:success (Score:1)
Thanks for your help.
Re:success (Score:1)