Поисковой паук (краулер): виды и функции
Поисковый паук (другие наименования — робот, веб-паук, краулер) — программа поисковой системы, сканирующая веб-ресурсы для отражения сведений о них в базе данных.
С какой целью создают поисковых пауков?
Приведём элементарный пример. Представим себе Иванова Валерия, который регулярно посещает сайт http://it-ebooks.info/, где ежедневно публикуются новые электронные книги. Заходя на ресурс, Валерий выполняет заданную последовательность действий:
1) открывает главную страницу;
2) заходит в раздел «Последние загруженные произведения»;
3) оценивает новинки из списка;
4) при появлении интересных заголовков, проходит по ссылкам;
5) читает аннотацию и, если она интересна, скачивает файл.
Указанные действия отнимают у Валерия 10 минут. Однако, если тратить на поиск 10 минут в день, в месяц это уже 5 часов. Вместо этого к задаче можно привлечь программу, отслеживающую новинки по расписанию. По механизму действия она будет представлять собой простейшего веб-паука, заточенного под выполнение определенных функций. Без краулеров не выживет никакая поисковая система, будь то лидеры Google и «Яндекс» или предприимчивые стартапы. Боты перемещаются по сайтам, отыскивая сырье для поисковой системы. При этом чем с большей отдачей трудится паук, тем актуальнее результаты выдачи (рис. 1).
Функции веб-пауков
В зависимости от поисковой системы, функции, которые мы перечислим ниже, могут выполнять один или несколько роботов.
1. Сканирование контента сайта. Функция краулера первого порядка — обнаружение вновь созданных страниц и сбор размещенной текстовой информации.
2. Считывание графики. Если поисковая система подразумевает поиск графических файлов, для этой цели может быть введен отдельный веб-паук.
3. Сканирование зеркал. Робот находит идентичные по содержанию, но разные по адресу, ресурсы. «Работник», наделенный такими должностными полномочиями, есть у «Яндекса».
Содержание
Виды поисковый роботов
У поисковых систем есть несколько пауков, каждый из которых поддерживает выполнение запрограммированных функций (рис. 2).
Пауки «Яндекс»
- Yandex/1.01.001 (compatible; Win16; I) — центральный поисковый продукт «Яндекса», который индексирует контент.
- Yandex/1.01.001 (compatible; Win16; P) — робот, который индексирует картинки и фотографии.
- Yandex/1.01.001 (compatible; Win16; H) — отыскивает зеркала и дубли ресурса.
- Yandex/1.03.003 (compatible; Win16; D) — первый паук, который приходит на ресурс после добавления его через раздел вебмастера. Его задачи — проверка добавленных параметров, указанных в панели, на соответствие.
- Yandex/1.03.000 (compatible; Win16; M) — краулер, который посещает страницу после ее загрузки по ссылке «Найденные слова» в поисковой выдаче.
- YaDirectBot/1.0 (compatible; Win16; I) — индексирует сайты из рекламной сети «Яндекса» (РСЯ).
- Yandex/1.02.000 (compatible; Win16; F) — бот сканирует фавиконы сайтов.
Пауки Google
- Googlebot — центральный робот.
- Googlebot News — бот, который находит и индексирует новости.
- Google Mobile — анализирует версии сайтов для смартфонов.
- Googlebot Images — веб-паук, индексирующий графику.
- Googlebot Video — сканирует видеоролики и индексирует их.
- Google AdsBot — оценивает страницу по качественным параметрам.
- Google Mobile AdSense и Google AdSense — индексируют сайты рекламной сети Google.
Вежливые пауки — как научить роботов правилам поведения
Вежливыми называют краулеров, которые действуют, придерживаясь существующих правил поведения на сайте. Эти правила пишут вебмастеры, размещая их в файле robots.txt (рис. 3). Пауки, которые попадают на сайт, на начальном этапе изучают информацию в указанном файле, где перечислены страницы, содержание которых не подлежит разглашению (регистрационные данные пользователей, административные сведения). Получив указания, паук приступает к индексации сайта, либо покидает его.
В robots.txt прописывают:
- разделы сайта, закрытые/открытые для ботов;
- интервалы, которые паук обязан выдерживать между запросами.
Правила адресуются всем краулерам или какому-то определенному. Открыв файл http://yandex.ru/robots.txt, мы увидим: User-agent: * ... Disallow: /about.html ... Disallow: /images/* Allow: /images/$
User-Agent: Twitterbot Allow: /images
Расшифруем эти данные:
- ни одному роботу не разрешено заходить на страницу /about.html;
- веб-пауку Twitterbot предоставляется возможность просматривать ресурсы с адресами типа /images;
- прочие боты могут посещать страницы, заканчивающиеся на /images/, погружение ниже уровня Disallow: /images/* запрещено.
Вежливый робот всегда представляется и указывает в заголовке запроса реквизиты, которые дают возможность вебмастеру связаться с владельцем. Для чего вводятся ограничения? Владельцы ресурсов заинтересованы в привлечении реальных пользователей и не желают, чтобы программы строили на их контенте свой бизнес. Для этих целей сайты часто настраивают на обслуживание браузерных HTTP-запросов и лишь за тем — запросов от программ.