#!/usr/bin/perl use strict; use warnings; use Template::Extract; use Data::Dumper; use HTML::Clean; use LWP::UserAgent; # Get the page my $ua = LWP::UserAgent->new; my $response = $ua->get('http://155.69.224.75:8000/eeepeople/AcadStaff.asp'); die $response->status_line unless $response->is_success; my $html = $response->content; # Create the extraction template my $obj = Template::Extract->new; my $template = << '.'; [% FOREACH record %][% name %][% title %][% phonenumber %][% location %][% username %][% ... %][% END %] . # strip out any unnecesary whitespace from # the html to make parsing easier my $h = new HTML::Clean(\$html); $h->strip(); # extract the data from the html page and # dump the resulting data structure to STDOUT print Data::Dumper::Dumper( $obj->extract($template, $html) );