2013-03-09 95 views
1

我试图访问使用perl中的WWW :: Mechanize库的https页面。下面是我有:无法访问使用perl的WWW :: mechanize的https页面

#!/usr/local/bin/perl -w 
use strict; 
use lib '/home/perl_modules/libwww-perl-5.836/lib'; 
use lib '/home/perl_modules/WWW-Mechanize-1.72/lib'; 
use lib '/home/perl_modules/HTML-Tree-5.03/lib'; 
use lib '/home/perl_modules/Crypt-SSLeay-0.64/lib'; 
use WWW::Mechanize; 

my $m = WWW::Mechanize->new(); 


my $url = "http://alumni.nd.edu"; 
my $alias = "Linux Mozilla"; 

$m->agent_alias($alias); 

$m->follow_link(url => "/s/1210/start.aspx?sid=1210&gid=1&pgid=3&cid=40"); 

这里是输出:

Error GETing https://securelb.imodules.com/?sid=1210&gid=1&pgid=3&cid=40&returnurl=http%3a%2f%2falumni.nd.edu%2f: Server closed connection without sending any data back at www_mech_test.pl line 17 

阅读WWW ::机械化一些帮助页面之后,我尝试设置一个别名,包括地穴-SSLeay的模块,但我仍然会出现上述错误。我错过了什么?这是在RHEL 5.5下运行的。

+1

偏离主题,但你应该尝试[local :: lib](http://search.cpan.org/dist/local-lib/lib/local/lib.pm )而不是很多'use lib' – Alec 2013-03-09 16:34:15

+1

以下程序适用于我,大约需要100秒。(该IIS Web服务器就像糖蜜一样慢!)升级[LWP](http://p3rl.org/LWP),[LWP :: Protocol :: https](http://p3rl.org/LWP::Protocol::https)和[IO :: Socket :: SSL](http://p3rl.org/IO::Socket::SSL)到最新版本。 '使用WWW :: Mechanize;我的$ m = WWW :: Mechanize-> new; $ M-> GET( 'http://alumni.nd.edu/s/1210/start.aspx?sid=1210&gid=1&pgid=3&cid=40');打印$ m-> content;' – daxim 2013-03-09 18:38:28

+0

@daxim:请让我知道你必须加载哪个版本的模块才能使其工作?我有以下加载,它不起作用: – user2150989 2013-03-11 15:15:34

回答

0

代码未加载页面$ URL =” http://alumni.nd.edu“”

的follow_link前补充一点:

$m->get($url); 
$m->follow_link(url => "/s/1210/start.aspx?sid=1210&gid=1&pgid=3&cid=40"); 

的follow_link呼叫搜索由WWW装载机械化::文档,而不它不会找到任何东西。

相关问题