Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > парсер на perl


Автор: morla 27.12.2012, 13:17
здравствуйте!

подскажите, как можно на perl осуществить такую задачу: нужна программа, которая ищет в содержимом web-страницы заданный текст, если находит - сохраняет url в файл. сами web-страницы находятся в файле.

посмотрел HTML::LinkExtractor и HTML::Parser, но мне кажется я не на верном пути...

заранее спасибо.

Автор: arto 27.12.2012, 13:30
зависит от того как и какой текст искать. можно и простыми регексами обойтись.

Автор: morla 27.12.2012, 14:16
искать нужно по шаблону. например у меня есть ссылки на мои сайты в файлк. мне нужно, чтобы парсер проверил эти ссылки и если в тексте встречается, например слово "бухгалтерия", то сохранял бы эти ссылки в другом файле.

Автор: Pfailed 27.12.2012, 14:31
HTML::Parser вполне подойдёт

Автор: morla 27.12.2012, 15:25
http://search.cpan.org/dist/HTML-Parser/Parser.pm


мне понятно, как брать из файла - $p->parse_file("foo.html");
но как написать в HTML::Parser->new, чтобы обрабатывал текст, а не теги?

не могли бы вы привести пример кода? с perl полько 3-4 дня знаком =(

Автор: infarch 30.12.2012, 19:43
Если нужно просто искать слово "бухгалтерия" то зачем вообще парсер? Ищите регуляркой в тексте страницы.

Автор: shootnix 5.1.2013, 19:36
Поддерживаю предыдущего оратора =)
Если нет необходимости рыться в структуре DOM, а просто нужно найти какой-то кусок текста, не нужно городить огород, быстрее получится просто регуляркой. 

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