31 января 2017 года в блоге разработчиков поисковой системы Яндекс появилась новость об изменении языка запросов, а именно, о прекращении поддержки ряда операторов:
• & – поиск документов, в которых слова запроса, объединенные оператором, встречаются в одном предложении;
• && и << – поиск заданных слов в пределах документа;
• ~ – поиск документов, в которых заданное слово не содержится в одном предложении со словом, указанным до оператора;
• () – группировка слов при сложных запросах;
• !! – поиск слова, начальная форма которого указана в запросе.
На моей памяти предыдущее подобное объявление Яндексом о прекращении поддержки операторов случалось всего однажды – в сентябре 2007-го года – и было довольно резонансным, так как касалась операторов link (поиск страниц, ссылающихся на заданную) и anchor (поиск в текстах ссылок, ведущих на заданную страницу), являвшихся важным инструментов для аналитики ссылочного ранжирования.
После этого громких заявлений на данную тему уже не делалось, но часть операторов языка запросов прекратила свое существование, тихо исчезнув из документации (такие, например, как операторы задания веса для слова из запроса : и :: или оператор настройки мягкости для фильтрации по кворуму softness). С другой стороны, до сих пор поддерживаются операторы, никогда не входившие в официальную документацию для большого веб-поиска, а упоминавшиеся, например, только в документации к сервису поиска по сайту или корпоративной сети Яндекс.Сервер. О подобных операторах я писал в своих статьях «Сеанс поисковой магии. Недокументированные операторы языка запросов Яндекса» и «Недокументированные операторы языка запросов Яндекса. Продолжение сеанса поисковой магии».
Звоночки о том, что в языке запросов будет что-то меняться, начали поступать уже некоторое время назад. Так, например, оператор << не так давно стал некорректно работать справа от оператора url (скриншот сделан до появления обсуждаемой новости):
Для сравнения – пример корректной работы оператора << справа от оператора site:
Операторы, о прекращении поддержки которых было объявлено 31 января, относились к операторам морфологии и поискового контекста и упоминание о них уже исчезло из документации по языку запросов Яндекс.Помощи.
К слову, последние изменения в документации языка запросов были зафиксированы примерно полгода назад, летом 2016 года. Тогда из документации по операторам поискового контекста безо всяких анонсов исчезли операторы расстояния /n, /+n, /-n, /(m n), &&/ n.
А из списка документных операторов исчезло упоминание об операторах:
• title: - поиск по заголовкам документов (тег title);
• inurl: - поиск по страницам, в адресе которых есть заданный фрагмент.
При этом обращает на себя внимание тот факт, что два последних оператора использовались в связке с официально упраздненным сейчас оператором группировки (), который использовался в случае, если запрос, который нужно было найти в соответствующем фрагменте страницы (заголовке или адресе) состоял из нескольких слов. Руководитель службы по работе с веб-мастерами Яндекса Михаил Сливинский в одном из обсуждений данной новости в соцсетях подтвердил, что последние изменения повлияют также на операторы title: и inurl:, они также будут отключены. Хотя, полагаю, что, возможно, не исключен вариант с частичной работоспособностью данных операторов, когда они будут корректно работать только в применении к единичным словам без использования оператора ().
Примечательно, что все тихо исчезнувшие из официальной документации прошлым летом операторы по факту продолжают на момент написания этой статьи работать корректно. Впрочем, как и операторы, официально упраздненные сейчас (за редким исключением, упомянутым выше), однако сам факт появления новости о прекращении их поддержки неумолимо свидетельствует о том, что в любой момент можно ожидать изменений в их работе.
Несмотря на то, что в новости о прекращении поддержки операторов упомянуто, что они являются редко используемыми, думаю, что не ошибусь, предположив, что многочисленные SEO сервисы активно использовали некоторые из них в промышленных масштабах. Возможно, это явилось одной из причин отключения операторов с целью уменьшить нагрузку на поиск от автоматических запросов. Причем, даже если задать вручную буквально несколько подряд запросов с использованием различных операторов, перед вами непременно появится капча, требующая подтвердить, что вы не робот. Это достаточно красноречиво свидетельствует о том, что Яндекс считает подобные запросы, скажем так, не совсем естественными. В любом случае, Яндекс оптимизирует производительность поиска, и посчитал поддержку части операторов слишком большой роскошью. По крайней мере, я не думаю, что отмена операторов связана исключительно с целью лишить SEO-специалистов инструментов для анализа поисковой выдачи, как это было с отключением операторов link и anchor без малого десять лет назад.
Обращает на себя внимание тот факт, что прекращается поддержка операторов, не имеющих прямых аналогов в задокументированном списке операторов языка запросов Google - главного конкурента Яндекса на российском поисковом рынке. Впрочем, в официальном списке Google есть небольшая оговорка о «часто используемых функциях». И реально работающих операторов поиска Google несколько больше, среди недокументированных операторов есть такие как:
• intitle: и allintitle: – поиск в заголовке страницы по одному слову и по фразе соответственно;
• inurl: и allinurl: – поиск в адресе страницы по одному слову и по фразе соответственно;
• intext: и allintext: – поиск только в тексте страницы по одному слову и по фразе соответственно;
• inanchor: и allinanchor: – поиск только в тексте ссылок на страницу по одному слову и по фразе соответственно
И так вот с учетом недокументированных, но работающих операторов Google, язык запросов Яндекса с отключением операторов title: и inurl: становится еще беднее, чем у основного конкурента.
Итак, язык запросов Яндекса, некогда бывший невероятно мощным, продолжает планомерно урезаться, что, несомненно, осложняет решение задач аналитических исследований поисковой выдачи. Из отключаемых в этот раз операторов особенно жаль терять операторы << и (), которые использовались для построения запросов, решающих ряд важных задач, в частности поиска по анкор-файлу (подробнее см. в моей статье «Сеанс поисковой магии. Поиск по анкор-файлу»). Судя по всему, придется искать новые варианты построения подобных запросов с использованием оставшихся в распоряжении операторов. И вполне возможно, что эта задача не относится к разряду невыполнимых.