WWW::Mechanize->get give error(不支持HTTPS)



我正在尝试使用WWW::Mechanize登录Yahoo。但是,当我尝试获取登录页面时,它给出了错误

Error GETing https://login.yahoo.com/config/login_verify2?&.src=ym: Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)

我安装了Crypt::SSLeay,我认为它应该处理HTTPS请求。为什么会给出此错误?

我什至在脚本开头说"使用 Crypt::SSLeay",它不会给出有关未安装的错误。

先去YA!页面(http),然后"点击"登录"(https)链接会有帮助吗?

任何帮助或建议将不胜感激。

编辑:我试图安装LWP::P rotocol:https,但它失败了。

再次编辑:安装带有测试的 Crypt::SSLeay 会导致相同的失败。

第三次编辑:谢谢你们帮助我,伙计们。抱歉回复晚了。这是Redhat 9,整个安装非常糟糕。

我最初的目标是安装WWW::Mechanize,以便能够登录雅虎。系统管理员(我们的老师)安装了perl 5.8.7,这导致系统失败---由于LWP::UserAgent无法在5.8.8以下的版本上自行升级。

然后我使用 App::p erlbrew 在我的主目录中安装了 Perl 5.10.1,并成功安装了 Mech。但是,使用我安装的旧模块(使用 5.8.7)时,这会产生许多兼容性问题。现在我不确定如何卸载所有内容,我只剩下 15 兆的磁盘空间。

OpenSSL已经在系统上,但是我今天早上通过从镜像下载压缩包并编译它,在我的主目录中安装了另一个OpenSSL。显然它似乎是最新版本。

有一件事是要了我的命。我没有根权限来做任何事情。这个项目将于周五到期,所以我想我会放弃这个项目,做一些根本不涉及HTTPS的事情。

读到我只需要对openssl-devel进行百胜安装,但是如果没有root权限,我就无法做到这一点。如果有人知道如何做,请告诉我。

我会尝试你关于强制安装Net::SSLeay的建议,稍后再告诉你。

现在我尝试在其他目录中安装 Mech(远离 5.8.7 的东西),但它失败了......呸。。。

第4次编辑:我强行安装了Net::SSLeay。这是日志:它不起作用。您对 SSL 库的看法是正确的。

第五次编辑:啊老师安装了openssl-devel,现在它可以工作了!!!!!!!

WWW::

Mechanize 在后台使用 LWP::UserAgent(作为基类)来获取 URL。 从文档中,我看到您需要安装 LWP::P rotocol::https 以支持 https urls。

安装细节取决于您的平台。您基本上需要:

1) 开放SSL库2) 网络::SSLeay Perl 绑定模块

最新更新