2013-03-09 97 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裝載機械化::文檔,而不它不會找到任何東西。

相關問題