Модераторы: korob2001, ginnie

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> post get запросы и LWP::UserAgent, теория и практика вопроса 
:(
    Опции темы
burakov
Дата 23.5.2011, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 28.7.2006

Репутация: нет
Всего: нет



Здравствуйте, 

стоит задача наладить закачку (скачивание) файлов с файлообменного сервера. Нужно автоматизировать процесс. В связи с чем сразу возникло некоторое количество вопросов. Подскажите хотя бы с теорией. Ни разу не делал.

Я решил так. что нужно послать файлообменнику post запрос в котором бы передавались логин, пароль ну и куча всякого в заголовке.  Я подсмотрел Firefox -> Tamper Data заголовки
и написал код. А в ответ я планировал получить хотя бы Куки типа: Опять же из Тампер дата

Set-Cookie=PHPSESSID=3mn5oopf6ekokfbvsub7thrki5; path=/; domain=.filesonic.com
PHPSESSID=efe80h7pe9ahf78sg87vok1t35; path=/; domain=.filesonic.com
email=isellmp3%40gmail.com; path=/; domain=.filesonic.com
nickname=beatport; path=/; domain=.filesonic.com
isAffiliate=1; path=/; domain=.filesonic.com
role=premium; path=/; domain=.filesonic.com

Чтобы далее подставляя эти данные в GET запрос - получать или закачивать файлы.

Код

use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use Data::Dump qw (dump);

my $url = 'http://www.filesonic.com';
my $postdata = 'email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce';

my $ua = LWP::UserAgent -> new ();
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');

my $req = HTTP::Request -> new (
    'POST' => $url,
    [
        'Host' =>  'www.filesonic.org',
        'User-Agent' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16',
        'Accept' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
        'Accept-Language' => 'ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3',
        'Accept-Encoding' => 'gzip,deflate',
        'Accept-Charset' => 'windows-1251,utf-8;q=0.7,*;q=0.7',
        'Keep-Alive' => '115',
        'Connection' => 'keep-alive',
        'Content-Type'=> 'application/x-www-form-urlencoded; charset=UTF-8',
        'X-Requested-With' => 'XMLHttpRequest',
        'Referer' => 'www.filesonic.org',
        'Cookie' => '__utma=26991146.1470026777.1305714560.1305889600.1306150213.3; __utmz=26991146.1305714560.1.1.utmcsr=techno-minimal-bit.com|utmccn=(referral)|utmcmd=referral|utmcct=/2011/02/09/tim-hecker-ravedeath-1972/; isJavascriptEnable=1; lang=ru; role=anonymous; __utmb=26991146.1.10.1306150213; __utmc=26991146',
        'Pragma' => 'no-cache',
        'Cache-Control' => 'no-cache',
        'POSTDATA' => 'email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce'
    ]
); 

$req -> content_type ('application/x-www-form-urlencoded');
$req -> content ($postdata);

my $res = $ua -> request ($req); 
print dump $res;


Но в ответ чего то ни хрена не пришло smile
посмотрел Dump

Код

bless({
  _content => "",
  _headers => bless({
        "client-date" => "Mon, 23 May 2011 12:19:28 GMT",
        "client-peer" => "78.140.176.180:80",
        "client-response-num" => 1,
        "client-transfer-encoding" => "chunked",
        connection => "close",
        "content-type" => "text/html",
        date => "Mon, 23 May 2011 12:20:14 GMT",
        location => "http://www.filesonic.com/",
        server => "nginx",
      }, "HTTP::Headers"),
  _msg => "Moved Temporarily",
  _protocol => "HTTP/1.1",
  _rc => 302,
  _request => bless({
        _content => "email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce",
        _headers => bless({
                      "accept" => "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
                      "accept-charset" => "windows-1251,utf-8;q=0.7,*;q=0.7",
                      "accept-encoding" => "gzip,deflate",
                      "accept-language" => "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3",
                      "cache-control" => "no-cache",
                      connection => "keep-alive",
                      "content-type" => "application/x-www-form-urlencoded",
                      cookie => "__utma=26991146.1470026777.1305714560.1305889600.1306150213.3; __utmz=26991146.1305714560.1.1.utmcsr=techno-minimal-bit.com|utmccn=(referral)|utmcmd=referral|utmcct=/2011/02/09/tim-hecker-ravedeath-1972/; isJavascriptEnable=1; lang=ru; role=anonymous; __utmb=26991146.1.10.1306150213; __utmc=26991146",
                      host => "www.filesonic.org",
                      "keep-alive" => 115,
                      postdata => "email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce",
                      pragma => "no-cache",
                      referer => "www.filesonic.org",
                      "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                      "x-requested-with" => "XMLHttpRequest",
                    }, "HTTP::Headers"),
        _method  => "POST",
        _uri     => bless(do{\(my $o = "http://www.filesonic.com")}, "URI::http"),
      }, "HTTP::Request"),
}, "HTTP::Response")


здесь ни куков,  ни контента

Вопрос: может я чего совсем не так делаю? и даже думаю не в том направлении? (куда тогда смотреть?)
или хитрый файлообменник - каким то образом просто вычисляет таких как я умников и не дает баловаться?

Спасибо.


--------------------
Нотный архив http://libnote.ru скачать ноты бесплатно
PM MAIL   Вверх
Pfailed
Дата 23.5.2011, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



Проще
my $res = $ua->post($url, [key1=>val1, key2=>val2], key1=>val1, key2=>val2);
                                            ^^^^^^^post^^^^^^  ^^^^^headers^^^^^^



--------------------
PM MAIL   Вверх
burakov
Дата 23.5.2011, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 28.7.2006

Репутация: нет
Всего: нет



Насчет того, что можно проще - это хорошо, 
Вопрос: 
пусть у меня немного сложнее - но почему 
$res -> content = ''; (пусто)
по идее, же если успешная регистрация - там должна быть страница, которая выдается зарегистрированному пользователю, 
если нет - тогда страница с ошибкой , а у меня пусто.



--------------------
Нотный архив http://libnote.ru скачать ноты бесплатно
PM MAIL   Вверх
Pfailed
Дата 24.5.2011, 06:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



Вероятно произошел редирект, потому и пусто. LWP по умолчанию не следуюет за ридеректом на post запрос (см. опцию requests_redirectable). Во-вторых у вас не установлено опции для сохранения cookies (см. опцию cookie_jar).


--------------------
PM MAIL   Вверх
burakov
Дата 24.5.2011, 10:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 28.7.2006

Репутация: нет
Всего: нет



Код

push (@{ $ua->requests_redirectable }, 'POST');


немного помогло, но результата все равно нет. 
Я решил пока не трогать куки, а просто залогиниться хотя бы.
для этого взял и получил GET главную страницу Файлообменника

Код

use HTTP::Request;
use HTTP::Cookies;
use Data::Dump qw (dump);

my $req = undef;
my $res = undef;

my $url = 'http://www.filesonic.com';

my $ua = LWP::UserAgent -> new ();
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');
push (@{ $ua->requests_redirectable }, 'POST');

$req = HTTP::Request -> new (
    'GET' => $url,
    [
        'Host' =>  'www.filesonic.org',
        'User-Agent' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16',
    ]
); 
$res = $ua -> request ($req); 
print $res -> content;


таким образом увидел форму, которая посылает POST запрос Login и Password и подсмотрел 
ее URL

Следующим шагом было посыл POST запроса на URL формы

Код

use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Cookies;
use Data::Dump qw (dump);

my $req = undef;
my $res = undef;

$url = 'http://www.filesonic.com/user/login';
my $postdata = 'email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce';

my $ua = LWP::UserAgent -> new ();
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');
push (@{ $ua->requests_redirectable }, 'POST');


$req = HTTP::Request -> new (
    'POST' => $url,
    [
        'Host' =>  'www.filesonic.org',
        'User-Agent' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16',
    ]
    
); 

$req -> content_type ('application/x-www-form-urlencoded');
$req -> content ($postdata);
$res = $ua -> request ($req); 
print $res -> content;


ответ пришел, но не странички зарегистрированного юзера, а страницы с ошибкой , как будто бы, если бы я исполнил GET запрос на $url = 'http://www.filesonic.com/user/login';

Что я делаю неправильно? Почему не могу зарегистрироваться?



--------------------
Нотный архив http://libnote.ru скачать ноты бесплатно
PM MAIL   Вверх
EcSYZ
Дата 24.5.2011, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 79
Регистрация: 21.6.2007

Репутация: нет
Всего: 1



Цитата

Я подсмотрел Firefox -> Tamper Data заголовки
и написал код. А в ответ я планировал получить хотя бы Куки типа: Опять же из Тампер дата

Вот этого делать не стоит. Надо использовать нормальный прокси, например Andiparos, и уже по инфе из него создавать запросы в скрипте.

Да и может стоить заюзать например Mojo::UserAgent в виду меньшего гемороя с ним.

PS:
Код

...
    [
        'Host' =>  'www.filesonic.org',
        'User-Agent' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16',
    ]
...

WTF ? 'Host' =>  'www.filesonic.org', ??? или всё таки www.filesonic.COM

Это сообщение отредактировал(а) EcSYZ - 24.5.2011, 10:43
PM MAIL WWW   Вверх
Pfailed
Дата 24.5.2011, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



Вот-вот
Код

[
        'Host' =>  'www.filesonic.org',
        'User-Agent' => 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16',
]


Во-первых это не нужно: юзерагент вы уже указали, а правильный хост HTTP::Request и сам подставит. Во-вторых, как уже заметили хост указали неверный.
Да и вообще представьте себе принцип авторизации и поймите, что без включенных cookies он у вас не удастся.



--------------------
PM MAIL   Вверх
burakov
Дата 24.5.2011, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 28.7.2006

Репутация: нет
Всего: нет



Да с хостом промашка вышла, я его вообще убрал ...
код переписал максимально просто 

Код

use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Cookies;
use Data::Dump qw (dump);


my $req = undef;
my $res = undef;

my $url = 'http://www.filesonic.com/user/login';
my $postdata = 'email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce';

my $ua = LWP::UserAgent -> new ();
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');
push (@{ $ua->requests_redirectable }, 'POST');

$req = HTTP::Request -> new ('POST' => $url);
$req -> content_type ('application/x-www-form-urlencoded');
$req -> content ($postdata);
$res = $ua -> request ($req); 

print dump $res;

# print $res -> content;
# my $cookie_jar = new HTTP::Cookies;
# $cookie_jar -> extract_cookies ($res);
# print $cookie_jar -> as_string;



$res -> content - мне также как и раньше не понравился, но вот в дампе я уже обнаруживаю, параметр
"set-cookie", в котором прописана роль=premium (это роль юзера, которым я пытаюсь зайти) ну и остальное.
Я не понял - я уже залогинился???    smile


По поводу $cookie_jar - я никак не могу понять как их включить?
в документации написано 
The default is to have no cookie_jar, i.e. never automatically add ``Cookie'' headers to the requests.
Что я перевел - как "по умолчанию куки выключены".

Достаточно будет извлечь их из допустим GET запроса к $url = 'http://www.filesonic.com'
вот такой конструкцией 
my $cookie_jar = new HTTP::Cookies;
$cookie_jar -> extract_cookies ($res);
print $cookie_jar -> as_string;
И это будет означать - что куки включены?

Я пытаюсь себе представить принцип авторизации, но у меня не получается :(. Где нибудь можно прочитать об этом?




--------------------
Нотный архив http://libnote.ru скачать ноты бесплатно
PM MAIL   Вверх
EcSYZ
Дата 24.5.2011, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 79
Регистрация: 21.6.2007

Репутация: нет
Всего: 1



кусок из одного скрипта своего:
Код

    my ($ua, $res);
    $ua = LWP::UserAgent->new;
    $ua->max_redirect(2);
    $ua->show_progress(0);
    $ua->timeout(30);
    $ua->cookie_jar( HTTP::Cookies->new(file => 'lwp_cookies.txt', autosave => 0) );

PM MAIL WWW   Вверх
Pfailed
Дата 24.5.2011, 11:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



Включаются просто:
$ua = LWP::UserAgent->new(cookie_jar => HTTP::Cookies->new);



--------------------
PM MAIL   Вверх
burakov
Дата 24.5.2011, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 28.7.2006

Репутация: нет
Всего: нет



Да -а-а-а
получилось. Залогинился, smile

Теперь пытаюсь файл загрузить, тут вообще мрак.

Код

use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Cookies;
use Data::Dump qw (dump);

my $req = undef;
my $res = undef;

my $url = 'http://www.filesonic.com/user/login';
my $postdata = 'email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce';

my $ua = LWP::UserAgent -> new ();
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');
push (@{ $ua->requests_redirectable }, 'POST');

$req = HTTP::Request -> new ('POST' => $url);
$ua-> cookie_jar (HTTP::Cookies->new());
$req -> content_type ('application/x-www-form-urlencoded');
$req -> content ($postdata);
$res = $ua -> request ($req); 

my $cookie_jar = new HTTP::Cookies;
$cookie_jar -> extract_cookies ($res);
$ua = undef;

#подсмотрел в $res->content URL формы

$url = 'http://s212.filesonic.com';
$ua = LWP::UserAgent -> new ();
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');
push (@{ $ua->requests_redirectable }, 'POST');

$req = HTTP::Request -> new (
        'POST' => $url, 
        [
            'upload[]' => 'select3.txt'
        ]
    ); 

$req -> content_type ('form-data');    
$ua-> cookie_jar ($cookie_jar); 
$res = $ua -> request ($req); 
print $res -> content;



Может конечно куда и грузит, только ответный
$res -> content; опять выводит на страничку для загрузки файла, 
а мне хочется какую нибудь ссылочку ответную на этот файл получить...

filesonic.com весь такой аяксовый - может вообще невозможно с ним так работать как я хочу  - 
при помощи perl?



--------------------
Нотный архив http://libnote.ru скачать ноты бесплатно
PM MAIL   Вверх
EcSYZ
Дата 24.5.2011, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 79
Регистрация: 21.6.2007

Репутация: нет
Всего: 1



Код

...
my $cookie_jar = new HTTP::Cookies;
$cookie_jar -> extract_cookies ($res);
$ua = undef;

$url = 'http://s212.filesonic.com';
$ua = LWP::UserAgent -> new ();
...

Что вас сподвигло написать такой отборнейший бред ? Зачем вообще использовать LWP, если каждый раз его занулять и опять делать какие то бессмысленные действия ?
Может тогда лучше вообще на сокеты перейти ?  smile 

Это сообщение отредактировал(а) EcSYZ - 24.5.2011, 14:18
PM MAIL WWW   Вверх
burakov
Дата 24.5.2011, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 28.7.2006

Репутация: нет
Всего: нет



Согласен, undef на $ua убрал, но, все таки это дело не решило... smile
Хотя бы в общих чертах - алгоритм действий с файлообменником.

1. Залогинился - получилось 
2. Сохранил куки в $cookie_jar (чтобы потом подставлять их в каждый http запрос.
3. Надо сделать upload файлу.

нашел что то такое по ссылке
http://docs.netive.ru/Oreilly/perl3/lwp/ch05_07.htm

по аналогии пытаюсь загрузить файл (лежит в том же каталоге, что и скрит - select3.txt)
По первому $res->content - подсмотрел форму, которая отправляет файлы, ее URL, имя 'upload[]' .

Думаю в ответ мне даст что то типа странички, где будут ответная ссылка на файл от файлобменника?

Код

use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Cookies;
use Data::Dump qw (dump);

my $req = undef;
my $res = undef;

my $url = 'http://www.filesonic.com/user/login';
my $postdata = 'email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce';

my $ua = LWP::UserAgent -> new ();
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');
push (@{ $ua->requests_redirectable }, 'POST');

$req = HTTP::Request -> new ('POST' => $url);
$ua-> cookie_jar (HTTP::Cookies->new());
$req -> content_type ('application/x-www-form-urlencoded');
$req -> content ($postdata);
$res = $ua -> request ($req); 

my $cookie_jar = new HTTP::Cookies;
$cookie_jar -> extract_cookies ($res);


$url = 'http://s212.filesonic.com';
$ua -> agent ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16');

$req = HTTP::Request -> new (
        'POST' => $url, 
        [
            'upload[]' => 'select3.txt'
        ]
    ); 

$req -> content_type ('form-data');    
$ua-> cookie_jar ($cookie_jar); 
$res = $ua -> request ($req); 
print $res -> content;



Но в ответ пусто...
Что не так?
Интересует хотя бы алгоритм (уж не до синтаксиса), 
говорю же первый раз такое делаю, 
или где почитать?
Да и по ходу все немного осложняет то, что это файлообменник?





p.s. Судя по всему я таки частично на правильном направлении..., потому как скачать файл из файлообменника получилось...  И интересно - сколько раз мне можно куки подставлять - если качка - всю ночь и более может идти с файлообменника? через сколько минут залогиниваться вновь? У кук же там какое время жизни есть?

p.s. Посмотрел Dump последнего кода там
интересная строка 
        "client-warning" => "Redirect loop detected (max_redirect = 7)",

Может можно как то WWW::Mechanize::Firefox  Воспользоваться, чтобы он дал отработать аякс коду?
но только я в нем что то метода POST не нашел...

Это сообщение отредактировал(а) burakov - 24.5.2011, 16:31


--------------------
Нотный архив http://libnote.ru скачать ноты бесплатно
PM MAIL   Вверх
Pfailed
Дата 24.5.2011, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



cookie_jar достаточно один раз установить в конструкторе и дальше не трогать, они сами сохраняются и воставляются в запросе.
У загрузки файлов принцип такой: $ua->post($url, Content_Type => "form-data", Content => ['upload[]' => ['select3.txt']])


--------------------
PM MAIL   Вверх
burakov
Дата 24.5.2011, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 554
Регистрация: 28.7.2006

Репутация: нет
Всего: нет



Все равно Dump $res->content от загрузки файла получается вот таким
Может я нельзя таким образом загрузить файл на данный файлообменник?
Что еще можно придумать?

Код

bless({
  _content => "",
  _headers => bless({
        "client-date" => "Tue, 24 May 2011 17:44:15 GMT",
        "client-peer" => "199.101.133.196:80",
        "client-response-num" => 1,
        "client-transfer-encoding" => "chunked",
        "client-warning" => "Redirect loop detected (max_redirect = 7)",
        connection => "close",
        "content-type" => "text/html",
        date => "Tue, 24 May 2011 17:44:21 GMT",
        location => "",
        server => "nginx",
      }, "HTTP::Headers"),
  _msg => "Moved Temporarily",
  _previous => bless({
        _content => "",
        _headers => bless({
              "client-date" => "Tue, 24 May 2011 17:44:11 GMT",
              "client-peer" => "199.101.133.196:80",
              "client-response-num" => 1,
              "client-transfer-encoding" => "chunked",
              connection => "close",
              "content-type" => "text/html",
              date => "Tue, 24 May 2011 17:44:20 GMT",
              location => "",
              server => "nginx",
            }, "HTTP::Headers"),
        _msg => "Moved Temporarily",
        _previous => bless({
              _content => "",
              _headers => bless({
                    "client-date" => "Tue, 24 May 2011 17:44:10 GMT",
                    "client-peer" => "199.101.133.196:80",
                    "client-response-num" => 1,
                    "client-transfer-encoding" => "chunked",
                    connection => "close",
                    "content-type" => "text/html",
                    date => "Tue, 24 May 2011 17:44:19 GMT",
                    location => "",
                    server => "nginx",
                  }, "HTTP::Headers"),
              _msg => "Moved Temporarily",
              _previous => bless({
                    _content => "",
                    _headers => bless({
                          "client-date" => "Tue, 24 May 2011 17:44:09 GMT",
                          "client-peer" => "199.101.133.196:80",
                          "client-response-num" => 1,
                          "client-transfer-encoding" => "chunked",
                          connection => "close",
                          "content-type" => "text/html",
                          date => "Tue, 24 May 2011 17:44:18 GMT",
                          location => "",
                          server => "nginx",
                        }, "HTTP::Headers"),
                    _msg => "Moved Temporarily",
                    _previous => bless({
                          _content => "",
                          _headers => bless({
                                "client-date" => "Tue, 24 May 2011 17:44:08 GMT",
                                "client-peer" => "199.101.133.196:80",
                                "client-response-num" => 1,
                                "client-transfer-encoding" => "chunked",
                                connection => "close",
                                "content-type" => "text/html",
                                date => "Tue, 24 May 2011 17:44:17 GMT",
                                location => "",
                                server => "nginx",
                              }, "HTTP::Headers"),
                          _msg => "Moved Temporarily",
                          _previous => bless({
                                _content => "",
                                _headers => bless({
                                      "client-date" => "Tue, 24 May 2011 17:44:07 GMT",
                                      "client-peer" => "199.101.133.196:80",
                                      "client-response-num" => 1,
                                      "client-transfer-encoding" => "chunked",
                                      connection => "close",
                                      "content-type" => "text/html",
                                      date => "Tue, 24 May 2011 17:44:16 GMT",
                                      location => "",
                                      server => "nginx",
                                    }, "HTTP::Headers"),
                                _msg => "Moved Temporarily",
                                _previous => bless({
                                      _content => "",
                                      _headers => bless({
                                            "client-date" => "Tue, 24 May 2011 17:44:06 GMT",
                                            "client-peer" => "199.101.133.196:80",
                                            "client-response-num" => 1,
                                            "client-transfer-encoding" => "chunked",
                                            connection => "close",
                                            "content-type" => "text/html",
                                            date => "Tue, 24 May 2011 17:44:15 GMT",
                                            location => "",
                                            server => "nginx",
                                          }, "HTTP::Headers"),
                                      _msg => "Moved Temporarily",
                                      _previous => bless({
                                            _content => "",
                                            _headers => bless({
                                                  "client-date" => "Tue, 24 May 2011 17:44:05 GMT",
                                                  "client-peer" => "199.101.133.196:80",
                                                  "client-response-num" => 1,
                                                  "client-transfer-encoding" => "chunked",
                                                  connection => "close",
                                                  "content-type" => "text/html",
                                                  date => "Tue, 24 May 2011 17:44:14 GMT",
                                                  location => "",
                                                  server => "nginx",
                                                }, "HTTP::Headers"),
                                            _msg => "Moved Temporarily",
                                            _protocol => "HTTP/1.1",
                                            _rc => 302,
                                            _request => bless({
                                                  _content => "",
                                                  _headers => bless({
                                                                content => ["upload[]", ["select3.txt"]],
                                                                "content-type" => "form-data",
                                                                cookie => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                                                                cookie2 => "\$Version=\"1\"",
                                                                "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                                                              }, "HTTP::Headers"),
                                                  _method  => "POST",
                                                  _uri     => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
                                                }, "HTTP::Request"),
                                          }, "HTTP::Response"),
                                      _protocol => "HTTP/1.1",
                                      _rc => 302,
                                      _request => bless({
                                            _content  => "",
                                            _headers  => bless({
                                                           content      => ["upload[]", "select3.txt"],
                                                           cookie       => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                                                           cookie2      => "\$Version=\"1\"",
                                                           "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                                                         }, "HTTP::Headers"),
                                            _method   => "GET",
                                            _protocol => undef,
                                            _uri      => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
                                          }, "HTTP::Request"),
                                    }, "HTTP::Response"),
                                _protocol => "HTTP/1.1",
                                _rc => 302,
                                _request => bless({
                                      _content  => "",
                                      _headers  => bless({
                                                     content      => ["upload[]", "select3.txt"],
                                                     cookie       => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                                                     cookie2      => "\$Version=\"1\"",
                                                     "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                                                   }, "HTTP::Headers"),
                                      _method   => "GET",
                                      _protocol => undef,
                                      _uri      => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
                                    }, "HTTP::Request"),
                              }, "HTTP::Response"),
                          _protocol => "HTTP/1.1",
                          _rc => 302,
                          _request => bless({
                                _content  => "",
                                _headers  => bless({
                                               content      => ["upload[]", "select3.txt"],
                                               cookie       => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                                               cookie2      => "\$Version=\"1\"",
                                               "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                                             }, "HTTP::Headers"),
                                _method   => "GET",
                                _protocol => undef,
                                _uri      => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
                              }, "HTTP::Request"),
                        }, "HTTP::Response"),
                    _protocol => "HTTP/1.1",
                    _rc => 302,
                    _request => bless({
                          _content  => "",
                          _headers  => bless({
                                         content      => ["upload[]", "select3.txt"],
                                         cookie       => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                                         cookie2      => "\$Version=\"1\"",
                                         "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                                       }, "HTTP::Headers"),
                          _method   => "GET",
                          _protocol => undef,
                          _uri      => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
                        }, "HTTP::Request"),
                  }, "HTTP::Response"),
              _protocol => "HTTP/1.1",
              _rc => 302,
              _request => bless({
                    _content  => "",
                    _headers  => bless({
                                   content      => ["upload[]", "select3.txt"],
                                   cookie       => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                                   cookie2      => "\$Version=\"1\"",
                                   "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                                 }, "HTTP::Headers"),
                    _method   => "GET",
                    _protocol => undef,
                    _uri      => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
                  }, "HTTP::Request"),
            }, "HTTP::Response"),
        _protocol => "HTTP/1.1",
        _rc => 302,
        _request => bless({
              _content  => "",
              _headers  => bless({
                             content      => ["upload[]", "select3.txt"],
                             cookie       => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                             cookie2      => "\$Version=\"1\"",
                             "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                           }, "HTTP::Headers"),
              _method   => "GET",
              _protocol => undef,
              _uri      => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
            }, "HTTP::Request"),
      }, "HTTP::Response"),
  _protocol => "HTTP/1.1",
  _rc => 302,
  _request => bless({
        _content  => "",
        _headers  => bless({
                       content      => ["upload[]", "select3.txt"],
                       cookie       => "messagingUnreadLastcheck=1306259053; PHPSESSID=7lj1gesunmfv7vtmdhvqklf6b0; nickname=beatport; lang=en; messagingUnread=0; isAffiliate=1; email=isellmp3%40gmail.com; role=premium",
                       cookie2      => "\$Version=\"1\"",
                       "user-agent" => "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.16) Gecko/20110319 Firefox/3.6.16",
                     }, "HTTP::Headers"),
        _method   => "GET",
        _protocol => undef,
        _uri      => bless(do{\(my $o = "http://s212.filesonic.com")}, "URI::http"),
      }, "HTTP::Request"),
}, "HTTP::Response")


Блин, ну есть же вот такие вот сайты
http://www.reupload.it
значит как то можно все таки автоматизировать процесс?


Это сообщение отредактировал(а) burakov - 24.5.2011, 22:04


--------------------
Нотный архив http://libnote.ru скачать ноты бесплатно
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.1259 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.