【问题标题】:Error while using WWW::Mechanize in Perl to open a Webpage在 Perl 中使用 WWW::Mechanize 打开网页时出错
【发布时间】:2015-01-07 11:02:04
【问题描述】:

我正在尝试使用 WWW::Mechanize 模块在 Perl 中打开一个网页。相同的代码如下:

use WWW::Mechanize;
my $m = WWW::Mechanize->new();
$url = 'http://www.google.com';
$m->get($url);
print "$m->content()";

当我运行此代码时,我收到如下错误: GETing http://www.google.com 时出错:无法连接到 www.google.com:80。 出现此类错误的原因可能是什么?如何更改代码以打开 URL 中指定的网页?

【问题讨论】:

    标签: perl perl-module www-mechanize


    【解决方案1】:

    有两个问题:

    1. print "$m->content()"; 行应该写成print $m->content();:否则你会得到WWW::Mechanize=HASH(0xeca870)->content()

    2. 您似乎遇到了网络或软件问题:您的其余代码可以正常工作。

    【讨论】:

    • 我改变了它。还是同样的错误。有什么办法可以解决这个问题吗?
    • 您的电脑可以浏览网页吗?您确定终端不在任何类型的 ssh 远程会话中吗?你没有运行任何代理吗?
    • 我的电脑可以浏览网页。我正在使用草莓 perl 终端。我的网络浏览器上没有运行任何代理。当我将 url 更改为“cat.com”时,它运行良好。提供任何其他 URL 都会产生错误。您认为这可能是由于端口被占用吗?
    • google 80 端口显然被占用了,但是山景中有大量的硬件,所以我认为问题不在 google 方面,而是在您的环境和第一个网络网关之间的某个地方。代理、防火墙、恶意软件……不知道!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-30
    • 1970-01-01
    相关资源
    最近更新 更多