Для продвижения сайтов в поисковых системах важно знать алгоритмы работы этих самых поисковиков. Поисковые системы представляют собой некоторую структурированную базу данных, в которой хранится информация, размещенная на других сайтах сети Интернет. Большинство поисковых систем имеет схожий принцип работы. В общих случаях можно выделить следующие основные этапы работы поисковых систем:
- Сбор информации со страниц сайтов в сети Интернет.
- Индексация сайтов.
- Поиск по запросу.
- Ранжирование результатов.
Следует рассмотреть каждый этап работы поближе.
Сбор информации
Для формирования базы поисковой системы используются специальные алгоритмы — роботы, которые занимаются сбором информации. Как только сайт создан и становится доступным для посещения, должно пройти некоторое время, прежде чем поисковые системы обнаружат и проведут сканирование нового ресурса. Ускорить данный процесс может владелец сайта, добавив внешнюю ссылку на сайт в специальный каталог или аддурилку.
Аддурилка – специализированный сервис, для добавления нового контента для индексации в поисковой системе. Происходит от английского «Add URL», что означает «добавить ссылку». Используется для добавления ссылок на сайт владельцем вручную.
После того, как сайт попал в сеть поисковой системы, он заносится в специальную таблицу очередности индексирования. Когда подойдёт очередь нового сайта, специальная программа робот (так же имеет название паук, сборщик, краулер) посещает сайт и начинает сбор информации. Информацией считается любой контент, присутствующий на сайте (текст, картинки) и доступный для сторонних (не зарегистрированных) пользователей.
Вообще сбор информации — это простое сканирование сайта. Поисковый робот не занимается обработкой полученных данных, он лишь переходит по ссылкам и передаёт информацию поисковой системе, которая в дальнейшем произведёт её анализ.
Важно, чтобы сканирование сайта было прозрачно для поисковых систем, поэтому необходимо помнить о грамотно составленной иерархии сайта. С главной страницы поисковый робот начинает переходить по всем ссылкам, потом начинает переходить по ссылкам внутренних страниц и так далее. За один проход сканирования паук не способен пройти на глубоко вложенные страницы, поэтому их сканирование будет произведено позднее. Для того, чтобы не тратить время впустую и быстрее обработать контент, поисковый робот, проводящий сканирование сайта, в первую очередь смотрит специальный файл robots.txt, где для него указан закрытый для поиска контент. Кроме этого файла, упростить работу робота можно создав файл sitemap.xml, который представляет собой карту сайта с информацией о страницах, которые подлежат индексированию поисковым роботом.
Индексация сайтов
После того, как робот собрал информацию с сайта, начинается второй этап работы – индексация данных с сайта.
Индексация — это процесс, в результате которого создаётся специальный обратный (инвертированный) файл индекса для каждой страницы сайта. Файл индекса состоит из двух частей:
- Сам словарь, содержащий в себе все слова, которые встретились поисковому роботу, а также ссылку на данные в пост-листе для каждого из этих слов.
- Пост-лист, представляющий собой массив с данными обо всех вхождениях нужного слова в базе поисковой системы.
Файл индекса необходим для быстрого обратного поиска данных по слову, которое имеет вхождение в них. Простыми словами, имея слово мы получаем страницы, где оно упоминается.
После процесса индексации, данные становятся доступны для выдачи в поисковой системе и их можно найти по ключевым словам, входящим в текст.
Если обычные методы ускорения не помогают, то существуют дополнительные инструменты по типу ускоренной индексации сайта в Google, который своими уникальными разработками позволяет проиндексировать страницы вашего сайта в Гугле значительно быстрее, с лимитом на использование до 2000 страниц в день.
Поиск по запросу
После того, как пользователь введёт запрос для поиска, происходит его анализ, результатом которого является вес каждого слова из поискового запроса. Вес слова — это частотное соотношение количества вхождений данного слова в документ, к общему количеству слов в данном документе.
Используя инвертированный индексный файл, находятся все документы в базе поисковой системы, содержащие в себе заданные слова. С помощью формулы, приведённой ниже, вычисляется идентичность документа поисковому запросу, после чего документы, наиболее схожие с запросом, попадают в выходные данные или результат поиска.
Схожесть документа вычисляется по формуле:
similarity(Q,D)=SUM( w(qk)∙w(dk) ),
где similarity(Q,D) – идентичность запроса Q документу D;
w(qk) – вес k-го слова в запросе;
w(dk) – вес k-го слова в документе.
Индекс схожести зависит от частоты вхождений каждого слова в документ: чем чаще встречаются все слова вместе, тем этот индекс выше.
Ранжирование результатов
Под ранжированием следует понимать сортировку результатов работы поисковой системы в поисковой выдаче. На сортировку влияют множество факторов, которые называются как внутренними, так и внешними. К внутренним факторам относят содержание контента сайта, а внешними являются качество расположения внешней ссылки на сайт на других ресурсах.
Каждая поисковая система имеет свой алгоритм ранжирования, в котором отдаётся предпочтение разным факторам, например, в том числе зависящим либо от самой страницы, либо от домена.
Зависимость от страницы:
- Частота вхождения ключевого слова;
- «Авторитетность» страницы;
- И др.;
Зависимость от домена:
- Вхождение ключевых слов в ссылки;
- «Авторитетность» домена;
- И др.;
В общих чертах можно вывести формулу для ранжирования результатов, которая является упрощенной.
Ra(x)=(m∙Ta(x)+p∙La(x) )∙F(PRa),
где Ra(x) – итоговое соответствие документа a запросу x;
Ta(x) – релевантность текста (кода) документа a запросу x;
La(x) – релевантность текста ссылок с других документов на документ a запросу x;
PRa – показатель авторитетности страницы a, константа относительно x;
F(PRa) – монотонно неубывающая функция, причем F(0)=1, можно допустить, что F(PRa)=1+q∙PRa;
m,p,q – некие коэффициенты.
Данная формула даёт только общее представление о принципах ранжирования результатов поиска в поисковых системах.