my $p1 = scraper { process 'table[class="dextable"] td[class="cen"]', "list[]" => scraper { process "a", uri => '@href'; process "img", name => '@title'; }; }; my $res = $p1->scrape( URI->new("http://serebii.net/duel/figures.shtml") ); for my $p (@{$res->{list}}) { next unless ($p->{name} and $p->{uri}); print Encode::encode("utf8", "$p->{name}\t$p->{uri}\n"); }