ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Помогите доделать парсилку [Perl]
  #1  
Старый 20.02.2009, 13:56
Аватар для $p01nt
$p01nt
Участник форума
Регистрация: 19.02.2008
Сообщений: 186
Провел на форуме:
584540

Репутация: 96
По умолчанию Помогите доделать парсилку [Perl]

Всем привет!
Ребят, не получается спарсить id пользователей с hi5.com, проблема с отправкой запросов.
Т.е. скрипт должен отправлять запрос "Найти юзеров" потом "показать по тому же запросу еще 10 человек" и т.д.
запрос "найти юзеров" отлично работае, отлично парсится, а дальше затруднения.
Вот собственно код (должен спрасить первую и вторую страничку поиска, но парсит только первую):

Код:
       use warnings; 
	use strict; 
	use HTTP::Cookies; 
	use LWP::UserAgent; 
	
	 my $browser = LWP::UserAgent->new(); 
     my $cookies = HTTP::Cookies->new(); 
     $browser->cookie_jar($cookies); 
	 
	 open(ID,">>id.txt");	 
	 
	 my $url='http://hi5.com/friend/processSearch.do?searchNew=1&fromPage=%2Ffriend%2FWEB-INF%2Fsearch%2FsearchTotal.jsp&fromEmail=0&oldSearchString=&email=&name=&ageFrom=25&ageTo=55&gender=0&loveStatus=1069&goals=&country=1030&zip=&city=&miles=0&miles=0';
	my $url2='http://hi5.com/friend/processSearch.do?searchText=&searchType=advanced&offset=10&qx=People+Search+';

	my $response=$browser->get($url);
	$response=$browser->get($url2)->as_string;
	open(GOPOD,">gso.html"); print GOPOD $response;
 
Ответить с цитированием

  #2  
Старый 20.02.2009, 16:52
Аватар для [dei]
[dei]
Участник форума
Регистрация: 24.11.2008
Сообщений: 205
Провел на форуме:
1123418

Репутация: 362
Отправить сообщение для [dei] с помощью ICQ
По умолчанию

Код:
use HTTP::Cookies; 
use LWP::UserAgent;
use IO::Handle;

my $browser = LWP::UserAgent->new(); 
my $cookies = HTTP::Cookies->new(); 
$browser->cookie_jar($cookies); 
 
open(ID, ">id.txt");
ID->autoflush(1);
my $url = 'http://hi5.com/friend/processSearch.do?searchNew=1&fromPage=%2Ffriend%2FWEB-INF%2Fsearch%2FsearchTotal.jsp&fromEmail=0&oldSearchString=&email=&name=&ageFrom=25&ageTo=55&gender=0&loveStatus=1069&goals=&country=1030&zip=&city=&miles=0&miles=0';

my $response = $browser->get($url)->as_string;

while($response =~ /<a href="javascript:paginatePeople\('(\d+)',''\);" class="link_pagination_arrow"> Next &gt;<\/a>/) {
    my $nx=$1;
    while($response =~ /title=".*?" href="\/friend\/p(\d+)/g) {
        print ID $1."\n";
    }
    $response = $browser->get('http://hi5.com/friend/processSearch.do?searchText=&searchType=advanced&offset='.$nx.'&qx=People+Search+')->as_string;
}
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с парсером [Perl] $p01nt PHP, PERL, MySQL, JavaScript 2 16.02.2009 15:23
Народ!!! Помогите НАМ!!! Помогите покончить с беспределом!!! Monah Чаты 7 24.08.2005 07:06



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ