我正在尝试从http://www.soccerbase.com/tournaments/tournament.sd?comp_id=1从第 1184 行到第 1325 行抓取信息,基本上是接下来 7 天即将到来的比赛。我的代码适用于单个实例,但我不知道如何迭代代码,以便它会刮掉所有游戏信息,直到它达到 7 天的游戏价值。我是否可以创建某种循环,直到我点击某个标签或其他东西?到目前为止,这是我的代码,在此先感谢!
my $page = WWW::Mechanize->new;
$page->get('http://www.soccerbase.com/tournaments/tournament.sd?comp_id=1');
my $stream = HTML::TokeParser->new(\$page->{content});
my @fixture;
my $tag = $stream->get_tag("td");
while($tag->[1]{class} ne "dateTime"){
$tag = $stream->get_tag("td");
}
if ($tag->[1]{class} eq "dateTime") {
push(@fixture, $stream->get_trimmed_text("/a"));
}
$stream->get_tag("a");
$stream->get_tag("a");
push(@fixture, $stream->get_trimmed_text("/a"));
$stream->get_tag("a");
push(@fixture, $stream->get_trimmed_text("/a"));
foreach $element (@fixture){
print $element, "\t";
}
print "\n";