忽略未存在的网页的GET错误

时间:2013-04-01 11:26:02

标签: perl get www-mechanize

我使用WWW::Mechanize来获取和处理网页。我有一段代码,循环遍历网页列表。它看起来大概是这样的:

while (<$readFileHandle>) {
    $mech->get("$url");
}

现在当列表中的某个网页由于某种原因不存在时出现问题(这没问题)。问题是在这种情况下 - 程序返回错误并退出。错误看起来像是:

Error GETing <url> Not Found at <PATH/file.pl> line ...

如何忽略此类错误?我希望程序继续运行。

1 个答案:

答案 0 :(得分:3)

您需要使用eval {};

while ( my $url = readline($readFileHandle) ) {
    chomp $url;
    eval {
        $mech->get($url);
    };
    if ($@) {
      #error processing code
    }
}