Получение позиции сайта результатов поиска Google

.net c# google-search html-agility-pack parsing

Вопрос

Я хочу закодировать некоторый алгоритм или парсер, который должен получить позицию сайта в результатах поиска Google. Проблема заключается в том, что каждый раз, когда изменяется макет страницы Google, я должен исправить / изменить алгоритм. Как вы думаете, ребята будут часто меняться? Существуют ли какие-либо методы / советы / рекомендации об определении позиции сайта Google?

Как я могу сделать алгоритм определения надежной позиции?

Для этой цели я хочу использовать C #, .NET 2.0 и HtmlAgilityPack. Любые советы или предложения будут очень оценены. Спасибо заранее, ребята!


ПОСЛЕ ОБНОВЛЕНИЯ

Я знаю, что google покажет captcha, чтобы предотвратить машинные запросы. У меня есть специальная услуга для этого, которая будет распознавать любую капчу. Не могли бы вы, ребята, рассказать мне о своем опыте в точном поиске?

Принятый ответ

Я спросил об этом год назад и получил хорошие ответы. Определенно, Agility Pack - это путь.

В итоге мы сделали код с грубым скребком, который выполнял эту работу и бежал без проблем. Мы относились к Google относительно легко (около 25 запросов в день). Мы приняли меры предосторожности для рандомизации: 1) порядок и 2) время суток и 3) время, приостановленное между запросами. Я не знаю, помогло ли это, но мы никогда не попадали в капчу.

Мы больше не беспокоимся об этом.

Его основными недостатками были:

  • мы только потрудились проверить первую страницу (возможно, мы могли бы кодировать расширенную версию, которая просматривала первые X-страницы, но, возможно, это был бы более высокий риск - с точки зрения обнаружения Google).

  • его результаты были ненадежными и прыгали. Вы можете быть восьмым каждый день неделями, за исключением одного случайного дня, когда вы были на третьем месте. Возможно ... вся идея тщательного ежедневного или еженедельного чтения и регистрации нашего рейтинга слишком ошибочна

Чтобы ответить на ваш вопрос о том, как Google нарушил ваш код, Google не внес принципиально изменчивые изменения за все месяцы, когда мы его запустили, но они изменили что-то, что нарушило «моментальный снимок», который мы сохраняли в результате (возможно, изменение CSS?), Которое не сделали ничего, чтобы повысить достоверность результатов.


Популярные ответы

Google предлагает множество API-интерфейсов для доступа к своим услугам. Для поиска есть API пользовательского поиска .



Related

Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему