![]() |
Модераторы: korob2001, ginnie |
![]() ![]() ![]() |
|
morla |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 27.12.2012 Репутация: нет Всего: нет |
здравствуйте!
подскажите, как можно на perl осуществить такую задачу: нужна программа, которая ищет в содержимом web-страницы заданный текст, если находит - сохраняет url в файл. сами web-страницы находятся в файле. посмотрел HTML::LinkExtractor и HTML::Parser, но мне кажется я не на верном пути... заранее спасибо. |
|||
|
||||
arto |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
зависит от того как и какой текст искать. можно и простыми регексами обойтись.
|
|||
|
||||
morla |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 27.12.2012 Репутация: нет Всего: нет |
искать нужно по шаблону. например у меня есть ссылки на мои сайты в файлк. мне нужно, чтобы парсер проверил эти ссылки и если в тексте встречается, например слово "бухгалтерия", то сохранял бы эти ссылки в другом файле.
|
|||
|
||||
Pfailed |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 19.7.2009 Репутация: 22 Всего: 39 |
HTML::Parser вполне подойдёт
|
|||
|
||||
morla |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 27.12.2012 Репутация: нет Всего: нет |
http://search.cpan.org/dist/HTML-Parser/Parser.pm
мне понятно, как брать из файла - $p->parse_file("foo.html"); но как написать в HTML::Parser->new, чтобы обрабатывал текст, а не теги? не могли бы вы привести пример кода? с perl полько 3-4 дня знаком =( Это сообщение отредактировал(а) morla - 27.12.2012, 15:25 |
|||
|
||||
infarch |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 13.3.2009 Репутация: нет Всего: 1 |
Если нужно просто искать слово "бухгалтерия" то зачем вообще парсер? Ищите регуляркой в тексте страницы.
|
|||
|
||||
shootnix |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 3.9.2005 Где: Казахстан Репутация: 2 Всего: 2 |
Поддерживаю предыдущего оратора =)
Если нет необходимости рыться в структуре DOM, а просто нужно найти какой-то кусок текста, не нужно городить огород, быстрее получится просто регуляркой. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Perl" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |