2010-11-21 3 views
-3

Здесь код, который необходимо построить в цикле, чтобы заставить USER-Agent перебирать над связкой целей.Loop in Perl - с LWP :: UserAgent

for my $i (1..10000) { 
    my $request = HTTP::Request->new(GET => 
sprintf("http://www.example.com,%d", $i)); 

Правильно ли это итерация? Мне нравится слышать от вас ..., чтобы получить стартовую точку ...

+0

Вам не хватает закрывающего '}' в вашем цикле, и ваш 'sprintf' не сделает допустимый URL (I ' Предполагаю, что вы хотите/вместо запятой.) Но в противном случае он должен работать нормально. – friedo

+0

Hello Friedo - огромное спасибо за быстрый ответ! Как - Sprintf не подходит? Здесь я могу предоставить некоторую «дополнительную помощь для получения цели!». -btw см. три страницы подробностей: http://www.schulministerium.nrw.de/BP/SchuleSuchen?action=261.2855969084779&SchulAdresseMapDO=116191 http://www.schulministerium.nrw.de/BP/SchuleSuchen?action=261.2855969084779 & SchulAdresseMapDO = 116270 http://www.schulministerium.nrw.de/BP/SchuleSuchen?action=261.2855969084779&SchulAdresseMapDO=188268 кстати: мы можем цикл по результатам - с итерация - – zero

+0

Friedo - это должно быть назван другой - Sprintf («http: //www.example.com,%d», $ i)); без запятой! Заметьте, у меня много страниц, у которых есть результаты - и многие из них: поэтому я должен сделать итерацию на широком диапазоне - разобрать все и выбросить всех без результатов/(Кстати: это те страницы таких как 500er ошибок !?) – zero

ответ

1

Вместо этого вы можете использовать WWW::Mechanize, что является удобным подклассом для LWP :: Module. Для того, что вы хотите сделать, код может выглядеть так:

foreach my $i (1..1000) 
{ 
    #$mech is a object for WWW::Mechanize 
    $mech->get("http://yourtarget.com/whateveryouwant"); 
} 

Тогда вы можете сортировать результаты, например. по ответному коду (404 - Not Found, 200 - OK ...), проверив $mech->status()

+0

Привет, Cyber-Guard Design, Большое спасибо за ваш ответ. Кажется, что Mecha более удобна и подходит. Я более подробно рассмотрю CPAN Mecha-Man-Pages @. Снова: Mille Grazie - отличная доска здесь. Продолжайте отличную работу ... ;-) – zero

+0

Привет, рад, что я мог бы помочь. Определенно проверяйте справочные страницы, это буквально самое всестороннее руководство для модуля ... И когда дело доходит до обработки веб-сайта с помощью perl, оно не улучшается, чем WWW :: Механизируйте, настолько просты в использовании и гибкости! –

Смежные вопросы