Парсинг поисковых систем
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Парсинг поисковых систем — это процесс сбора URL-адресов , описаний или другой информации из поисковых систем . Это особая форма очистки экрана или веб-страниц, предназначенная только для поисковых систем.
Чаще всего более крупные поставщики поисковой оптимизации (SEO) зависят от регулярного сбора ключевых слов из поисковых систем, чтобы отслеживать конкурентную позицию веб-сайтов своих клиентов по релевантным ключевым словам или статусу их индексации .
Процесс входа на веб-сайт и автоматического извлечения данных также часто называют « сканированием ». Поисковые системы получают почти все свои данные от автоматических сканирующих ботов.
Трудности
[ редактировать ]Google на сегодняшний день является крупнейшей поисковой системой с наибольшим количеством пользователей, а также с наибольшим доходом от креативной рекламы, что делает Google самой важной поисковой системой для поиска компаний, связанных с SEO. [1]
Хотя Google не предпринимает юридических действий против парсинга, он использует ряд защитных методов, которые делают парсинг результатов сложной задачей, даже если инструмент парсинга реально подделывает обычный веб-браузер:
- Google использует сложную систему ограничения частоты запросов, которая может различаться для каждого языка, страны, пользовательского агента, а также в зависимости от ключевых слов или параметров поиска. Ограничение скорости может сделать его непредсказуемым при автоматическом доступе к поисковой системе, поскольку модели поведения не известны внешнему разработчику или пользователю.
- Ограничения сети и IP также являются частью систем защиты от парсинга. Поисковые системы нелегко обмануть, перейдя на другой IP-адрес, а использование прокси является очень важной частью успешного парсинга. Разнообразие и оскорбительная история IP также важны.
- Нарушающие IP-адреса и нарушающие IP-сети можно легко сохранить в базе данных черного списка, чтобы гораздо быстрее обнаружить нарушителей. Тот факт, что большинство интернет-провайдеров предоставляют клиентам динамические IP-адреса , требует, чтобы такие автоматические блокировки были временными и не блокировали невиновных пользователей.
- Обнаружение на основе поведения — самая сложная система защиты. Поисковые системы ежедневно обслуживают свои страницы миллионам пользователей, что предоставляет большой объем информации о поведении. Скрипт или бот парсинга ведут себя не так, как реальный пользователь, за исключением нетипичного времени доступа, задержек и времени сеанса, собираемые ключевые слова могут быть связаны друг с другом или включать необычные параметры. Например, у Google есть очень сложная система анализа поведения, возможно, использующая программное обеспечение глубокого обучения для обнаружения необычных моделей доступа. Он может обнаруживать необычную активность гораздо быстрее, чем другие поисковые системы. [2]
- Разметка HTML меняется в зависимости от методов, используемых для сбора содержимого веб-сайта. Даже небольшое изменение в данных HTML может привести к поломке инструмента очистки, пока он не будет обновлен.
- Общие изменения в системах обнаружения. В последние годы поисковые системы почти каждый месяц ужесточали свои системы обнаружения, что делало надежный парсинг все более и более трудным, поскольку разработчикам приходится регулярно экспериментировать и адаптировать свой код. [3]
Обнаружение
[ редактировать ]Когда защита поисковой системы считает, что доступ может быть автоматизирован, поисковая система может отреагировать по-другому.
Первый уровень защиты — страница с кодом проверки. [4] где пользователю предлагается подтвердить, что он реальный человек, а не бот или инструмент. Решение капчи создаст файл cookie , который на некоторое время снова разрешит доступ к поисковой системе. Примерно через сутки страница с капчей отображается снова.
Второй уровень защиты — аналогичная страница с ошибкой, но без капчи, в таком случае пользователю полностью блокируется использование поисковой системы до тех пор, пока временная блокировка не будет снята или пользователь не сменит свой IP.
Третий уровень защиты — долговременная блокировка всего сегмента сети. Google уже несколько месяцев блокирует крупные сетевые блокировки. Блокировка такого типа, скорее всего, инициируется администратором и происходит только в том случае, если инструмент очистки отправляет очень большое количество запросов.
Все эти формы обнаружения могут произойти и с обычным пользователем, особенно с пользователями, имеющими один и тот же IP-адрес или класс сети (диапазоны IPV4, а также диапазоны IPv6).
Методы соскабливания
[ редактировать ]Для успешного парсинга поисковой системы необходимы два основных фактора: время и объем.
Чем больше ключевых слов пользователю нужно очистить, и чем меньше времени занимает эта работа, тем сложнее будет парсинг и тем более развитым должен быть сценарий или инструмент парсинга.
Скрипты парсинга должны решить несколько технических проблем: [ нужна ссылка ]
- Использование ротации IP-адресов с помощью прокси. Эти прокси должны быть эксклюзивными (необщими) и не помечены ни в каких черных списках.
- Правильный тайм-менеджмент, время между сменой ключевых слов, нумерация страниц, а также правильно размещенные задержки. Эффективные долгосрочные показатели парсинга могут варьироваться от 3–5 запросов (ключевых слов или страниц) в час до 100 и более в час для каждого IP-адреса/прокси. в использовании. Качество IP-адресов, методы парсинга, запрошенные ключевые слова и запрошенный язык/страна могут сильно повлиять на возможную максимальную скорость.
- Правильная обработка параметров URL, файлов cookie, а также заголовков HTTP для эмуляции пользователя в обычном браузере.
- Анализ HTML DOM (извлечение URL-адресов, описаний, позиций в рейтинге, дополнительных ссылок и других соответствующих данных из HTML-кода)
- Обработка ошибок, автоматическая реакция на капчу или блокировку страниц и другие необычные реакции [ нужна ссылка ]
Языки программирования
[ редактировать ]При разработке парсера для поисковой системы можно использовать практически любой язык программирования. Хотя, в зависимости от требований к производительности, некоторые языки будут предпочтительнее.
PHP — это широко используемый язык для написания скриптов очистки веб-сайтов или серверных служб, поскольку он имеет встроенные мощные возможности (парсеры DOM, libcURL); однако его использование памяти обычно в 10 раз превышает аналогичный код C/ C++ . Ruby on Rails , как и Python, также часто используются для автоматического парсинга.
Кроме того, сценарии bash можно использовать вместе с cURL в качестве инструмента командной строки для очистки поисковой системы.
Юридический
[ редактировать ]При парсинге веб-сайтов и сервисов юридическая часть часто вызывает большую озабоченность у компаний. Для парсинга веб-сайтов это во многом зависит от страны, из которой находится пользователь/компания, производящая парсинг, а также от того, какие данные или веб-сайт парсируются. Со множеством различных судебных решений по всему миру. [5] [6]
Однако когда дело доходит до парсинга поисковыми системами, ситуация иная: поисковые системы обычно не включают интеллектуальную собственность в список, а просто повторяют или обобщают информацию, полученную с других веб-сайтов.
Самый крупный известный инцидент с парсингом поисковой системы произошел в 2011 году, когда Microsoft поймали на парсинге неизвестных ключевых слов из Google для своего собственного, довольно нового сервиса Bing. [7] но даже этот инцидент не привел к судебному разбирательству.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Google по-прежнему остается самой популярной поисковой системой в мире, но доля уникальных пользователей немного падает» . searchengineland.com . 11 февраля 2013 г.
- ^ «Знает ли Google, что я использую браузер Tor?» . tor.stackexchange.com .
- ^ «Группы Google» . гугл.com .
- ^ «Мой компьютер отправляет автоматические запросы – Справка reCAPTCHA» . support.google.com . Проверено 2 апреля 2017 г.
- ^ «Апелляционный суд отменил обвинительный приговор и приговор хакеру/троллю «weev» [Обновлено]» . arstechnica.com . 11 апреля 2014 г.
- ^ «Может ли сбор контента, не нарушающего авторские права, стать нарушением авторских прав... из-за того, как работают сборщики?» . www.techdirt.com . 10 июня 2009 г.
- ^ Сингел, Райан. «Google ловит копирование Bing; Microsoft говорит: «Ну и что?» " . Проводной .