Подсчет внешних ссылок с домена с помощью bing.

Михаил17 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
18.07.2010

Всем привет!

Подсчет внешних ссылок с домена с помощью поисковика bing.

Язык программирования любой, но желательно Делфи или C++ Builder, можно php.

Кто не знает - bing.com это поисковик от microsoft. Он умеет считать количество внешних ссылок с домена. Для этого используется команда "linkfromdomain:". Например, так:

http://www.bing.com/search?q=linkfromdomain%3Aauto.ru&go=&form=QBRE

Видим, что с auto.ru есть 80,100 исходящих ссылок (см. надпись 1-10 of 80,100 results). Работает и просто так:

http://www.bing.com/search?q=linkfromdomain:auto.ru

я не знаю, зачем там QBRE и что это такое.

Нужно сделать следующее. На входе список страниц, например, из текстового файла или копируется в поле для ввода. В списке может быть до 1000 ссылок. Пример списка:

http://auto.ru/moscvich/402/

http://www.crimea-go.com.ua/taxi.html

http://www.freedrweb.com/download+cureit/

На выходе получаем таблицу из 3 колонок. Можно текстом, но он должен копироваться в Эксель так, чтобы получалось 3 колонки. Например, в формате TSV или CVS. В первой колонке те же ссылки, во второй список доменов, в третей - количество внешних ссылок. В нашем примере:

http://auto.ru/moscvich/402/ auto.ru 80100

http://www.crimea-go.com.ua/taxi.html crimea-go.com.ua 823

http://www.freedrweb.com/download+cureit/ freedrweb.com 200

Тут есть проблемка: если послать Бингу 1000 запросов подряд, он скорее всего обидится, станет выдавать капчу или еще чего. Есть разные способы решить эту проблему. Можно просто сделать параметр: пауза между запросами, например, 4 секунды (пользователь может поменять). Но лучше выбрать одно из двух:

1. три параметра (пользователь может их менять)

X - пауза между запросами, допустим, 1 секунда

Y - пауза между сериями - 10 секунд

Z - количество запросов в серии 5

Программа делает 5 запросов, потом делает паузу 10 секунд.

2. Параметр "Пауза если робот" (пользователь может его менять), по-умолчанию 40 секунд. Т.е. программа работает, если ее заподозрили в том, что она робот - она делает паузу 40 секунд и работает дальше.

Нужны минимальные комментарии к коду, чтоб можно было понять, что там где.

Возможное дополнение (обсуждается отдельно): сделать, чтоб ранее проверенные домены где-то сохранялись и второй раз проверялись раз в месяц (настраиваемая переменная).

Сроки обсуждаемы, но вроде работы тут не много.