如果您是专门从网页中解析链接之后的,那么Perl的WWW :: Mechanize模块将以非常优雅的方式为您解决问题。这是一个示例程序,可捕获Stack Overflow的第一页并解析出所有链接,并打印其文本和相应的URL:
#!/usr/bin/perl
use strict;
use warnings;
use WWW::Mechanize;
my $mech = WWW::Mechanize->new;
$mech->get("http://stackoverflow.com/");
$mech->success or die "Oh no! Couldn't fetch stackoverflow.com";
foreach my $link ($mech->links) {
print "* [",$link->text, "] points to ", $link->url, "\n";
}
在主循环中,每个对象$link
都是WWW :: Mechanize :: Link对象,因此您不仅限于获取文本和URL。
祝一切顺利,