Парсим поисковую выдачу
с помощью AGGRESS Parser
Как-то было дело задавался вопросами парсинга поисковой выдачи, спрашивал у народа какой реализацией лучше воспользоваться. Народ правда тактично промолчал.
Очень не хотелось использовать парсеры заточенные под определенный поисковик. Посему порыскав по просторам глобальной сети, наткнулся на совершенно бесплатный парсер AGGRESS Parser.
Люди его хвалят, единственный минус – нету нормального мануала по использованию тулзы. Но где наша не пропадала, и не в таком разбирались.
Отдав некоторую часть своего времени, я разобрался с данным парсером. В идеале AGGRESS Parser’ом можно парсить все что душе угодно. Главное создать корректный конфиг-файл заточенный под нужную выдачу поисковика и хочешь гугл парсь, хошь яху с мсн’ом, а хочешь все вместе. Короче автору парсера, как принято в этих случаях говорить, респект и уважуха. Тулза действительно получилась универсальная.
На момент написания данного поста последнюю версию чудо-парсера можно скачать здесь.
Итак, опишу вкратце свои телодвижения.
Допустим нам надо напарсить ссылок в MSN, к примеру, с edu-шников по шибко хитрому запросу “Buy Viagra”.
Лезем туда где у нас установлен AGGRESS Parser и в директории search/ создаем файл – edu_msn.txt.
Теперь главное правильно затачиваем конфиг-файл для МСНа, для этого сперва сформируем нужный запрос непосредственно в браузере. У меня получился такой -
http://search.msn.com/results.aspx?q=site:edu+"buy viagra"&count=100.
Затем открываем внутренности самой выдачи и анализируем ее.
Ищем первую ссылку выдачи и смотрим между какими тэгами она находится.
Ага, вот эта ссылка:
<li><h3><a href=”http://www.austincc.edu/webdev/wp-content/uploads/thumbs/1/buy-viagra-norway.html” onmousedown=”
Далее нужно определить ссылку на следующую страницу выдачи, для этого ищем анкор с текстом «Next» и определяем чем у нас обрамлена нужная ссылка. А обрамлена она у нас вот такой хренью:
<a class="sb_pagN" href="/results.aspx?q=site:edu+%22buy%20viagra%22&count=100&first=101&FORM=PORE">Next</a>
Короче, после всех всех манипуляций у меня получился вот такой конфиг-файл для парсинга:
Url-http://search.msn.com
AbsoluteUrl-http://search.msn.com/results.aspx?q=site:.ru+{REQUEST}&count=100
UntilTextAfter-<li><h3><a href="{TEXT}" onmousedown="
UntilNextLinkAfter-class="sb_pagN" href="{NEXTLINK}"
Pattern-{TEXT}
Проверяем рабоспособность и убеждаемся что все парсится на ура. Отпарсенную базу сохраняем в файл и используем по назначению. Вроде все просто.
Ж2Ж Постовой!111:
Что-то про верстку, допечатную подготовку, дизайн в эпоху докомпьютерного набора
5 комментариев прокомментировали «Парсим поисковую выдачу»
«тактично промолчал» потому-что капча нихрена не работала…
пользуюсь довненько достаточно. за дорма, устраивает полностью.
Читал уже про этот парсер, тоже не смог разобраться, спасибо. Сейчас попробую.
ну вот, уже и мануальчик под агрес написал )))
Тоже искал парсеры выдачи для Яндекса, ни фига нормального не нашёл. Пришлось самому написать скрипт для xml.
Оставьте свой комментарий
Пожалуйста, дважды проверяйте свои комментарии перед отправкой Внимание: активна процедура проверки, так что нет необходимости добавлять комментарий повторно

Я бычок подниму горький дым затяну, люк открою, полезу домой ... (с)
