Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Не понимаю LWP


Автор: WERT 12.7.2007, 14:54
Есть код, взят с одной из тем, проблема в том, что в файл gothim.txt должна складываться страница ответа, т.к. та что появляется после прохождения авторизации(mail.rambler.ru), а мне возвращается та, что до, но с заполненными параметрами.
Чего-то я не понимаю, никак не могу пройти форму авторизации.

код Perl 
50: #!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request::Common;
use HTTP::Cookies;
use LWP;

my $ua = LWP::UserAgent->new;

my $cookie_jar = HTTP::Cookies ->new(file => 'cookies.txt',autosave => 1, 
ignore_discard=>1 #важно !!!
, );

$ua ->cookie_jar($cookie_jar); 

my ($url,$response);


my $login='логин';
my $pass = 'пароль';
my $domen ='рилм-королевство';
 

$url = 'http://id.rambler.ru/script/auth.cgi'; # путь до скрипта авторизации

$response=$ua->request(POST $url, 
        {back => $domen, 
    login => $login,
         passw => $pass,
        }); 

open LOG , ">gothim.txt";
print LOG $response->as_string; 
close(LOG);

$cookie_jar->extract_cookies($response);

$cookie_jar->save('cookies.txt');

my $hdrs=HTTP::Headers->new('Accept'=>'text/plain','UserAgent'=>'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)');
my $reqG=HTTP::Request->new('GET',$domen,$hdrs);

$cookie_jar->add_cookie_header($reqG);

$response=$ua->request($reqG);

open LOG , ">wegothim_two.htm";
print LOG $response->as_string; 
close(LOG); 
 
 

Автор: Nab 12.7.2007, 15:07
Скорее всего так и есть, страница такая, а в заголовке редирект, на следующуюю...
Попробуйте показать зароловок

$response->header->as_string;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)