Perl Mechanize::Firefox陷入困境
我正在使用WWW::Mechanize::Firefox对加载了一些JavaScript的页面进行抓取。Perl Mechanize::Firefox陷入困境,perl,firefox,web-crawler,mechanize,Perl,Firefox,Web Crawler,Mechanize,我正在使用WWW::Mechanize::Firefox对加载了一些JavaScript的页面进行抓取。 有关此问题的我的代码: my ($firemech) = WWW::Mechanize::Firefox->new(tab => 'current', ); $firemech->get($url); die "Cannot connect to $url\n" if !$firemech->success(); print "I'm connected!\n";
有关此问题的我的代码:
my ($firemech) = WWW::Mechanize::Firefox->new(tab => 'current', );
$firemech->get($url);
die "Cannot connect to $url\n" if !$firemech->success();
print "I'm connected!\n";
my ($retries) = 10;
while ($retries-- and ! $firemech->is_visible( xpath => '//*[@class="areaMapC"]' )) {
sleep 1;
}
die "Timeout" unless $retries;
my ($content) = $firemech->content();
第一个页面一切正常,它加载页面并识别稍后加载的类。然后,它会正确地切换到第二个页面(我看到Firefox正在更改它),但它永远不会出现“我已连接!”的打印
我检查了URL,发现想要的类在那里,代码对两个页面都是一样的(除了我想提取的一些ID)。我真的不知道出了什么问题
这类页面是。我通过简单地使用
my ($firemech) = WWW::Mechanize::Firefox->new();
而不是我以前用的。它仍然将内容保存在一个选项卡中,因此它完全符合我的需要