воскресенье, 25 мая 2008 г.

Парсим базу форумов с помощью Hrefera

Добрый день. Если Вы купили Hrefer и не знаете, как напарсить себе хорошую базу для спама, то эта статья для Вас.

В первую очередь нужно составить правильные запросы для парсинга. Для начала ознакомимся с синтаксисом поисковиков:

site:blablabla.net – в выдаче будут только станицы домена blablabla.net(домен может быть любого уровня). Можно написать просто site:.net, тогда в выдаче будут все сайты зоны .net).
inurl:blablabla – в выдаче будут станицы, в урле которых есть данное слово(blablabla) или фраза.
intitle:blablabla – в выдаче будут станицы, в заглавии которых есть данное слово(blablabla) или фраза.
intext:blablabla – в выдаче будут станицы, в контенте которых есть данное слово(blablabla) или фраза.

Если Вы хотите, чтоб поисковик нашел сайты, на которых есть какая-либо фраза полностью и без изменений, то нужно сделать такой запрос "blablabla 1234". Тогда поисковик выдаст страницы, в которых присутствует данная фраза, причем она может быть как в контенте, так и в заглавии или в урле страницы).

Таким образом, чтобы сделать выдачу точнее, можно в запросах inurl, intitle, intext ставить "", особенно если нужно найти целую фразу. Но в запросе site кавычки ставить не нужно.

Теперь о составлении запросов для парсинга форумов(естественно, эту схему можно использовать для составления запросов для парсинга любых ресурсов).

Вводим в гугле слово forum.



Видим, что гугл знает 4 110 000 000 форумов, но гугл покажет нам только 1000. Поэтому нужно всячески уточнять и комбинировать запросы.
Вводим inurl:"forum".



Выдача разная, и страниц меньше в 4 раза, но все равно очень много. Конкретизируем далее.
Вводим inurl:"forum" intitle"forum".



Уже 334 000 страниц. Потом придумываем различные запросы чтоб еще сузить выдачу и найти как можн больше ресурсов. Подробно описывать все не буду, просто приведу примеры таковых запросов.

1) inurl:"forum" intitle:"view topic"
inurl:"forum" intitle:"new topic"
inurl:"forum" intext:"new topic"
и т.д

2) inurl:"forum" site:com
и т.д. с разными доменными зонами

3) inurl:"forum.php"
inurl:"forum.html"
inurl:"forum.asp"
inurl:"forum.jspa"
и т.д.

4) можно составлять запросы такого плана: inurl: "forum.a". а – буква, с которой начинается название домена, на котором находится форум. Можно перебрать все буквы алфавита и получить много форумов.

5) inurl:"viewforum"
inurl:"viewtopic"
inurl:"viewthread"
и т.д.

6) Есть разные движки форумов и следовательно разные названия. Например:
inurl:"phpbb"
inurl:"yabb"
inurl:"phorum"
и т.д.

Как расширять и уточнять уже имеющиеся запросы для парсинга.
Для наглядности расскажу на отдельных примерах.

1. Вводим в гугле какой-нибудь запрос для парсинга из уже составленных вами. Возьмем например запрос intitle:viewtopic. Вот кусок выдачи:



Теперь смотрим на урлы и заглавия страниц из выдачи и находим какие-то особенности в них. Потом добавляем к ним inurl, intitle. В данном случае мы можем составить такие запросы:
inurl:showthread
inurl:showthread.php
inurl:forum_viewtopic.php
inurl:viewtopic.php
inurl:showtopic
inurl:index.php?showtopic
inurl:modules.php?name=Forums

2. Ну и еще один пример для получения запросов с intitle
Вводим запрос intitle:"forum". Кусок выдачи:



Получаем такие запросы:
intitle:"Forum: Home"
intitle:"Forum :: Index"
intitle:"Forum Index page"

3. Ну и просто немного примеров отобранных таким образом запросов:
inurl:"topic.cgi?forum="
inurl:"forum.xml"
inurl:"forum/yabb.pl?action="
inurl:"messages.html"
inurl:"index.php/topic,"
inurl:"write.php?"
inurl:"forum.asp?forumid="
inurl:"ubb/ultimatebb.cgi"
inurl:"ubbthreads.php?cat="
inurl:"viewtopic.php?p="
inurl:"popup.php?id="
inurl:"show.php?id="

Потом проявляем фантазию, комбинируем найденные запросы, ищем новые.

Комбинировать можно еще с помощью символа «-». Если ввести в поисковике "12345" -"blablabla", то в выдаче будут страницы, в которых есть комбинация 12345, но нет слова blablabla.

Можно составлять такие запросы(показываю на примере 1):
intitle:"viewtopic" -inurl:"showthread"
intitle:"viewtopic" -inurl:"modules.php?name=Forums"
intitle:"viewtopic" -inurl:"showtopic"
intitle:"viewtopic" -inurl:"showthread" -inurl:"modules.php?name=Forums" -inurl:"showtopic"
и т.д.
Поисковик будет выдавать нам новые и новые страницы выдачи, на которых будет значительно меньше уже собранных ссылок.

Таким образом, мы получаем большое количество запросов для парсинга. Но это еще не все. В хрефере есть возможность парсинга со словами. К каждому запросу хрефер будет добавлять введенные слова. Это сделает запросы еще более конкретными и увеличит количество напарсенных ресурсов. Чтобы добавить слова, можно просто дать хреферу любой текстовый файл(Add words from text file…).



Если парсим гугл, то текст на инглише нужен. Хрефер запишет каждое слово в отдельной строке и уберет дубли.

После парсинга удаляем дубликаты ссылок и база готова:)
Удачи!