1
나는 1184에서 1325 행의 http://www.soccerbase.com/tournaments/tournament.sd?comp_id=1에서 정보를 긁어 내려고합니다. 근본적으로 앞으로 7 일 동안 계속 될 게임입니다. 단일 인스턴스에서 작동하는 코드가 있지만 코드를 반복하는 방법을 알아낼 수 없으므로 7 일간의 게임이 끝날 때까지 모든 게임 정보를 다 찰 것이다. 특정 태그 또는 뭔가를 때릴 때까지 내가 긁을 수있는 일종의 루프가 있습니까? 지금까지 내 코드가 있습니다, 미리 감사드립니다!WWW :: Mechanize and iteration
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";
덕분에 너무 많은이 완벽하게 작동합니다. 만약 당신이 신경 쓰지 않는다면, 위의 구조에서 팀 이름과 날짜를 추출하여 정상적인 문자열 변수에 넣을 수 있습니까? 다시 한 번 감사드립니다! – blacky
해당 주제에 대한 [새 질문 열기] (http://stackoverflow.com/questions/ask) – daxim
나는 그렇게했다! – blacky