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

Поиск:

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


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

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



был не прав, исправился....

Это сообщение отредактировал(а) shamber - 24.5.2011, 23:11
PM MAIL Jabber   Вверх
burakov
Дата 24.5.2011, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Да не хочу, я чтобы за меня писали - просто прошу, чтобы рассказали и помогли.
Я прошу дать мне приблизительный хотя бы алгоритм действий. Чем подсмотреть аяксовые запросы, как их реализовать, как вот например, авторизоваться... (это уже получилось).
или прошу прокомментировать поведение файлообменника в том или ином случае, то есть хочу получше разобраться в вопросе... Если есть какая книжка хорошая на эту тему - посоветуйте.
С миру по нитки вот уже скачивать файлы с файлообменника научился..., осталось upload освоить и сказать всем "СПАСИБО"

А код я ни у кого не просил...
Извиняюсь , если кому то надоел... smile

Кстати , если все таки в этой теме не решу проблему, то товарищи, кому очень надо автоматизировать процесс заливки и скачивания файлов на файлообменники пусть идут
на http://www.reupload.it/ - там (правда за деньги) можно при помощи API от их сервиса реализовать удаленную загрузку файлов на интересующие файлообмениики и далее при помощи скрипта получить ссылки. (Правда придется им отдать пароль и логин - но там есть свои нюансы).





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


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

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



Цитата(burakov @  24.5.2011,  23:26 Найти цитируемый пост)
 Чем подсмотреть аяксовые запросы

прокси, который показывает http хедеры. Я использую proxomitron например.
Сейчас поискал программки, нашел fiddler2, мне вроде понравилась

Это сообщение отредактировал(а) shamber - 25.5.2011, 01:00
PM MAIL Jabber   Вверх
EcSYZ
Дата 25.5.2011, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Какой вообще фиддлер и какой нафиг тампер дата у огнелиса ???
Господа, неужели вам нравяться велосипеды изобретать и доставлять себе же гиморой ?
Цитата(EcSYZ @ 24.5.2011,  10:32)
Цитата

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

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

Есть нормальная прога Andiparos, написанная на Java. Ставите его себе, в браузере вбиваете в качестве прокси localhost:8080 и всё готово !!!

В результате сначала нужно проделать все действия руками в браузере, заметить все запросы которые будут уходить к сайту, а потом их повторять в ручном режиме в скрипте.
+Так же можно и следить(отлаживать) скрипт в процессе работы - пускаем скрипт через прокси, и смотрим за процессом его работы.
PM MAIL WWW   Вверх
burakov
Дата 25.5.2011, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Andiparos - это под LINUX???
под линукс нет возможности работать

а еще к файрфоксу нашел
livehttpheaders-0.17.xpi

получше чем Tamper Data

хотя конечно ДА если скрипт отдлаживать, то лучше прокси
а под Windows есть этот Andiparos?


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


Шустрый
*


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

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



Andiparos написан на JAVA, а всё написанное на Java работает везде и повсюду.
PM MAIL WWW   Вверх
burakov
Дата 25.5.2011, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



попробуем

Это сообщение отредактировал(а) burakov - 25.5.2011, 12:51


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


Опытный
**


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

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



К счастью, мне опять повезло, поскольку участник форума bugmenot1
выслал мне на почту форума готовый скрипт upload на мой файлообменник
с его разрешения я выкладываю его - как решение проблемы (я проверял - скрипт работает просто супер). И пусть все остальные типа меня читают и учатся. 

Код

use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Request::Common qw($DYNAMIC_FILE_UPLOAD);
use Time::HiRes qw(gettimeofday);
$DYNAMIC_FILE_UPLOAD = 1;

my $ua = LWP::UserAgent->new(
    cookie_jar => HTTP::Cookies->new,
    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');

my $page = $ua->post(
    'http://www.filesonic.com/user/login',
    Content => 'email=isellmp3%40gmail.com&redirect=%2F&password=4c3854514e5ce'
)->content;

index ($page, 'logout') != -1
    or die 'Login failed';
    
    
my ($act) = $page =~ m!<form(?=[^>]+?enctype="multipart/form-data")[^>]+?action="([^"]+)"!
    or die 'No action url';
    
my ($sess) = $ua->cookie_jar->as_string =~ 'PHPSESSID=([^;]+)';
$act .= "/?callbackUrl=http://www.filesonic.com/upload-completed/:uploadProgressId&X-Progress-ID=".
    'upload_'.substr(join('', gettimeofday()), 0, -3). '_' . $sess . '_' . int(rand(90000));

$page = $ua->post(
    $act,
    Content_Type => "form-data",
    Content => ['folderId' => 0, 'files[]' => ['select3.txt']]
)->content;

my ($link) = $page =~ /linkId"\s*:\s*"F(\d+)/
    or die 'No final link found';

print "http://www.filesonic.com/file/$link", "\n";


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

Код

index ($page, 'logout') != -1
    or die 'Login failed';


 
что за функция такая index?
и почему некоторые переменные объявляются в скобках типа

Код

my ($link) = ...


Спасибо.


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


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

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



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


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

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


 




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


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

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