Невозможно получить доступ к странице https с помощью WWW::mechanize, используя perl
Я пытаюсь получить доступ к странице https с помощью библиотеки WWW::Mechanize в Perl. Вот что у меня есть:
#!/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::Mechanize, я попытался установить псевдоним и включить модуль Crypt-SSLeay, но я все еще получаю вышеуказанную ошибку. Что мне не хватает? Это работает под RHEL 5.5.
1 ответ
Ваш код не загружает страницу $ 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::Mechanize, без него ничего найти не будет.