Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Охота на РАМБЛЕР!!! Приз 500 р.


Автор: Гость_Yuri 17.2.2005, 13:16
Задача следующая:
Наберите в браузере URI:
http://www.rambler.ru/cgi-bin/rambler_search?words=%EF%E0%F0%E8%EA%EC%E0%F5%E5%F0%F1%EA%E8%E5&start=madison.ru
Получите результат. Теперь получите точно такое же содержимое страницы из скрипта, работающего на каком-либо сервере в интернете. Ссылки на работающие скрипты присылайте на dick_fry@mail.ru
Если вместо ожидаемой страницы вы получили "цены на дрова", то значит вы готовы к работе над задачей. Успехов!!!

Текст скрипта, от которого можно отталкиваться привожу ниже:

#!/usr/bin/perl
use LWP::UserAgent;
use LWP::Simple;
use HTTP::Headers;
use HTTP::Request::Common;
use CGI::Carp qw(fatalsToBrowser);

print "Content-type: text/html;\n\n";
$url='http://www.rambler.ru/cgi-bin/rambler_search?words=%EF%E0%F0%E8%EA%EC%E0%F5%E5%F0%F1%EA%E8%E5&start=madison.ru';
my $ua = new LWP::UserAgent;
$pg=$ua->request(GET $url,
USER_AGENT => 'Mozilla/4.0 (compatible; MSIE 6.0; Windows 9',
CHARSET => 'windows-1251',
ACCEPT => '*/*',
ACCEPT_LANGUAGE => 'ru',
COOKIE => 'b=b; hotlog=1'
);
%h=%{$pg};
foreach $k (keys %h) {
$page=$page."\n<br>".$k.'='.$h{$k};
}
print "\n<br>+++++Answer headers<br>";
print join ('<br>',%{$h{'_headers'}});
print "\n<br>+++++Request<br>";
print join ('<br>',%{$h{'_request'}});
print '<br>+++++Answer<br><br>';
print $page;

Решение данной задачи нужно для написания смарт-агента. Верояно в протоколе HTTP есть что-то что я не знаю и знает RAMBLER. Буду благодрен за наводку на правильный путь.

За рабочий исходник (perl, php) плачу 500р. Скрипт должен работать на сервере в интернете - для проверки кидайте ссылки на работающий скрипт.
Обращайтесь по адресу: dick_fry@mail.ru

Автор: Гость_Yuri 21.2.2005, 09:44
ОХОТА ЗАКРЫТА!!!!

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