- Что такое поисковый робот. поисковый паук | секреты всемирной паутины
- Принцип работы поисковых роботов и их функции
- Особенности работы с поисковыми ботами
- 1. Высокая нагрузка на сервер при посещениях роботов
- 2. Проблемы из-за доступа фейковых ботов к сайту
- 2.1. Роботы Google
- 2.2. Роботы Яндекс
- 3. Список ботов поисковых систем
- Linux-инструменты для построения web-пауков
- Web-краулеры для анализа электронной почты
- Web-паук (web-spider) как программный агент
- Как повлиять на скорость индексирования
- Как функционируют роботы поисковых систем
- Корпоративные web-краулеры
- Области применения spider- и scraper-агентов
- Пример 1. простой агент типа scraper
- Пример 2. агент типа scraper для нахождения биржевых котировок
- Пример 3. общение пользователя с агентом для нахождения биржевых котировок
- Рис. 1. извещение, которое послал по электронной почте ruby-сценарий из листинга 5
- Список поисковых роботов
- Юридические аспекты
Что такое поисковый робот. поисковый паук | секреты всемирной паутины
Поиско́вый ро́бот («веб-пау́к», краулер) — программа, являющаяся составной частью поисковой системы и предназначенная для обхода страниц Интернета с целью занесения информации о них в базу данных поисковика. По принципу действия паук напоминает обычный браузер.
Он анализирует содержимое страницы, сохраняет его в некотором специальном виде на сервере поисковой машины, которой принадлежит, и отправляется по ссылкам на следующие страницы.
Владельцы поисковых машин нередко ограничивают глубину проникновения паука внутрь сайта и максимальный размер сканируемого текста, поэтому чересчур большие сайты могут оказаться не полностью проиндексированными поисковой машиной. Кроме обычных пауков, существуют так называемые «дятлы» — роботы, которые «простукивают» проиндексированный сайт, чтобы определить, что он доступен.
Порядок обхода страниц, частота визитов, защита от зацикливания, а также критерии выделения значимой информации определяются поисковыми алгоритмами.
В большинстве случаев переход от одной страницы к другой осуществляется по ссылкам, содержащимся на первой и последующих страницах.
Также многие поисковые системы предоставляют пользователю возможность самостоятельно добавить сайт в очередь для индексирования. Обычно это существенно ускоряет индексирование сайта, а в случаях, когда никакие внешние ссылки не ведут на сайт, вообще оказывается единственной возможностью указать на его существование.
Ограничить индексацию сайта можно с помощью файла robots.txt, однако некоторые недобросовестные боты могут игнорировать наличие этого файла. Полная защита от индексации может быть обеспечена другими механизмами, например установкой пароля на странице либо требованием заполнить регистрационную форму перед тем, как получить доступ к содержимому.
Принцип работы поисковых роботов и их функции
Поисковая выдача формируется в три этапа:
- Сканирование — сбор всех данных с веб-страниц ботами, включая тексты, картинки и видеоматериалы. Данный процесс происходит регулярно с учётом частоты обновлений ресурса.
- Индексация — внесение собранной информации в базу данных поисковых систем с присвоением определённого индекса для быстрого поиска. На крупных новостных порталах контент индексируется практически сразу после публикации.
- Выдача результатов — поиск информации по индексу и ранжирование страниц с учётом релевантности запросу.
Особенности работы с поисковыми ботами
Чтобы индексация сайта поисковыми роботами происходила быстро и эффективно, необходимо:
1. Высокая нагрузка на сервер при посещениях роботов
Индексация ботами поисковых систем крайне важна для продвижения, однако в некоторых ситуациях она может перегружать сервер, либо под видом роботов сайт могут атаковать хакеры. Чтобы знать цели, с которыми боты обращаются к ресурсу, и отслеживать возможные проблемы, проверяйте логи сервера и динамику серверной нагрузки в панели хостинг-провайдера. Критические значения могут свидетельствовать о проблемах, связанных с активным доступом к сайту поисковых роботов.
Когда роботы перегружают сервер слишком активными запросами к сайту, можно снизить их скорость обхода. Как это сделать, узнайте из справок Яндекс и Google.
2. Проблемы из-за доступа фейковых ботов к сайту
Бывает, что под видом ботов Google к сайту пытаются получить доступ спамеры или хакеры. Если возникла такая проблема, проверьте, действительно ли сайт сканирует поисковый робот Google:
2.1. Роботы Google
Полный список роботов Google можно посмотреть в справке. Рассмотрим наиболее популярных ботов:
2.2. Роботы Яндекс
У Яндекса тоже обширный список ботов, который можно детально изучить в Яндекс.Помощи. Расскажу о некоторых из них:
3. Список ботов поисковых систем
Поисковые системы используют различные типы роботов: для индексации обычных страниц, новостей, изображений, фавиконов и прочих типов контента. Список IP-адресов, которые используют боты поисковиков, постоянно меняется и не разглашается.
Linux-инструменты для построения web-пауков
Мы показали примеры создания scraper- и spider-агентов. Эту же функциональность можно реализовать и с помощью Linux-инструментов.
Полезная команда wget (Web get) позволяет организовать рекурсивную работу с Web-сайтом и сбор интересующего вас контента. Вы можете указать определенный Web-сайт, интересующий вас контент и некоторые другие административные опции. Эта команда перекачивает нужные файлы на ваш локальный компьютер.
Web-краулеры для анализа электронной почты
Теперь обратимся к отрицательным аспектам. К сожалению, всего несколько паршивых овец могут существенно осложнить пользование Интернетом множеству добропорядочных пользователей. Web-краулеры для анализа электронной почты ищут на Web-сайтах электронные адреса, которые затем используются для рассылки огромных количеств спама, с которым мы сталкиваемся ежедневно.
Анализ электронной почты является одной из самых простых задач для краулеров, в чем вы сможете убедиться в заключительном примере данной статьи.
Теперь, когда вы получили основные сведения о spider- и scraper-агентах, перейдем к примерам, которые демонстрируют, насколько легко создать такие агенты для Linux с помощью современных языков сценариев Ruby и Python.
Web-паук (web-spider) как программный агент
Web spider или Web scraper – это разновидности программных роботов или агентов (в терминологии, предложенной Аланом Кеем (Alan Kay) в начале 1980-х годов). По замыслу А. Кея, программный агент должен действовать в качестве посредника (proxy) между пользователем и компьютерным миром.
Современные программные агенты классифицируются по таким атрибутам, как автономность, адаптивность, коммуникативность и способность к совместной работе с другими агентами. В настоящее время предметом исследований в области агентов являются такие направления, такие как мобильность и даже индивидуальность агента.
Как повлиять на скорость индексирования
Выяснив, как работают поисковые роботы, вебмастер сможет гораздо результативнее продвигать свой сайт. Одной из основных проблем многих молодых web-проектов является плохая индексация. Роботы поисковых систем неохотно посещают неавторитетные интернет ресурсы.
Как функционируют роботы поисковых систем
Поисковый робот (паук, бот) представляет собой небольшую программу, способную без участия оператора посещать миллионы web-сайтов и сканировать гигабайты текстов. Считывание страниц и сохранение их текстовых копий – это первая стадия индексации новых документов.
Больше видео на нашем канале – изучайте интернет-маркетинг с SEMANTICA
Корпоративные web-краулеры
Как и стандартный паук поисковой машины, корпоративный Web-паук индексирует контекст, недоступный обычным посетителям. Например, компании обычно поддерживают внутренние Web-сайты для своих сотрудников. В этом случае область действия паука ограничена локальной средой.
Ограничение области поиска обычно повышает запас доступной вычислительной мощности, что позволяет создавать специализированные и более полные индексы. Компания Google сделала еще один шаг в этом направлении, предоставив поисковую машину для индексации контента пользователя персонального компьютера.
Области применения spider- и scraper-агентов
Web spider и Web scraper – это весьма полезные приложения. Различные типы таких приложений применяются достаточно широко, причем, как с добрым, так и со злым умыслом. Рассмотрим некоторые области их применения.
Пример 1. простой агент типа scraper
Рассмотренный в данном примере агент выясняет, на основе какого Web-сервера работает данный Web-сайт. Ответ на этот вопрос может оказаться весьма интересным, а при обработке достаточно большой выборки может предоставить увлекательные статистические результаты относительно распространенности Web-серверов определенных типов в государственных учреждениях, в учебных заведениях, в отраслевых организациях и т.д.
Пример 2. агент типа scraper для нахождения биржевых котировок
В этом примере я написал простой агент типа Web scraper (другое название – screen scraper) для сбора информации о котировках акций. Применен метод “грубой силы”, основанный на применении шаблона к ответной Web-странице:
Пример 3. общение пользователя с агентом для нахождения биржевых котировок
Показанный в Примере 2 scraper-агент для нахождения биржевых котировок выглядит весьма привлекательно, однако действительную пользу он принесет в том случае, если сможет осуществлять регулярный мониторинг курса акций и сообщать пользователю, если цена интересующих его акций поднялись выше определенного порога или опустилась ниже другого порога.
Сейчас мы увидим, как это делается. В показанном на Листинге 5 сценарии я доработал простой Web scraper – теперь он осуществляет регулярный мониторинг курса акций и отсылает сообщение по электронной почте, если курс акций вышел за пределы установленного коридора цен.
Рис. 1. извещение, которое послал по электронной почте ruby-сценарий из листинга 5
Кликните, чтобы увидеть увеличенное изображение
Временно оставим агенты типа scraper и перейдем к рассмотрению принципов построения Web-пауков.
Список поисковых роботов
Из всех поисковиков, занимающихся сканированием Рунета, самой большой коллекцией ботов располагает Яндекс. За индексацию отвечают следующие боты:
- главный индексирующий робот, собирающий данные со страниц web-сайтов;
- бот, способный распознавать зеркала;
- поисковый робот Яндекс, осуществляющий индексацию картинок;
- паук, просматривающий страницы сайтов, принятых в РСЯ;
- робот, сканирующий иконки favicon;
- несколько пауков, определяющих доступность страниц сайта.
Главный поисковый робот Google занимается сбором текстовой информации. В основном он просматривает html-файлы, с определенной периодичностью анализирует JS и CSS. Способен воспринимать любые типы контента, разрешенные к индексации. ПС Гугл располагает пауком, контролирующим индексацию изображений. Есть также поисковый робот – программа, поддерживающая функционирование мобильной версии поиска.
Юридические аспекты
По поводу применения Web-пауков для анализа информации в Интернете было подано несколько судебных исков, и все они были приняты к рассмотрению. Недавно компания Farechase, Inc. отвечала в суде по иску компании American Airlines относительно применения scraper-агентов, работающих в реальном времени.
Первоначально в этом иске утверждалось, что сбор данных нарушил соглашения компании American Airlines со своими клиентами (входящие в состав документа Положения и условия). После того, как эта претензия была отвергнута, компания American Airlines подала иск о причинении вреда, который был удовлетворен.
В других исках утверждалось, что пропускная способность, потребляемая spider- и scraper-агентами, ухудшает условия работы остальных пользователей. Все подобные претензии являются вполне обоснованными, что обуславливает необходимость соблюдения норм вежливости. Дополнительная информация по этому вопросу приведена в разделе Ресурсы.