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";