Mechanize :: Firefox卡住了

时间:2010-10-16 14:05:22

标签: 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 ($retries) = 10;
while ($retries-- and ! $firemech->is_visible( xpath => '//*[@class="areaMapC"]' )) {
    sleep 1;
}
die "Timeout" unless $retries;

my ($content) = $firemech->content();

第一页的一切都很顺利,它会加载页面并识别稍后加载的类。然后,它正确地更改为第二页(我看到Firefox更改它),但它永远不会到达“我已连接!”打印。

我检查了URL并且想要的类在那里,两个页面的代码相同(除了我要提取的一些ID)。我真的不知道出了什么问题。

此类网页为HERE

1 个答案:

答案 0 :(得分:3)

我通过简单地使用

解决了这个问题
my ($firemech) = WWW::Mechanize::Firefox->new();

而不是我以前用过的东西。它仍然将内容保存在一个选项卡中,以便完全满足我的需求。