Подсчет внешних ссылок с домена с помощью bing.
Всем привет!
Подсчет внешних ссылок с домена с помощью поисковика 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://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 секунд и работает дальше.
Нужны минимальные комментарии к коду, чтоб можно было понять, что там где.
Возможное дополнение (обсуждается отдельно): сделать, чтоб ранее проверенные домены где-то сохранялись и второй раз проверялись раз в месяц (настраиваемая переменная).
Сроки обсуждаемы, но вроде работы тут не много.