К сожалению, многие фишки Ядекса перечисенные в этом курсе больше не поддерживаются. Курс морально устарел. |
Профессиональный поиск
Язык поисковых запросов. Поиск по цитате
Форма расширенного поиска содержит довольно много полей, позволяющих составлять изощренные запросы. Однако почти все эти запросы могут быть сведены к использованию встроенного языка поисковых запросов Яндекса. Знание хотя бы основных команд этого языка позволяет очень быстро получать правильные результаты даже в самой лаконичной поисковой форме. Кроме того, постоянное их применение поможет лучше понимать саму концепцию поиска.
Представим себе большой магазин, в котором продаются яблоки. Посетители приходят и говорят "У вас есть какие-нибудь зимние яблоки?". Или "Какие у вас есть сорта сладких яблок?". Кто-то совсем не знает, чего хочет, поэтому говорит что-то вроде "Нужны вкусные яблАки". Продавец переспрашивает - "Вам нужны сладкие яблОки?". Покупателей, которые просто зашли за яблоками, но еще не знают точно, чего они хотят - большинство. Они определяют весьма примерно свои предпочтения, даже допуская в словах ошибки.
А теперь представим себе, что вы заходите в магазин и говорите - "Мне нужно 3 килограмма антоновки обыкновенной". Понятно, что в этом случае продавец моментально сориентируется и отпустит товар гораздо быстрее, чем если бы ему приходилось выяснять вкусы и предпочтения.
Перенесем эти представления в мир Интернета. Будем считать, что Яндекс - это продавец в магазине. Ему приходится работать с большинством посетителей, которые знают весьма примерно, какие яблоки они хотят. Поэтому обычная выдача результатов будет исправлять ошибки, изменять формы слова и вообще всячески помогать. Среднестатистического пользователя такая работа, которая наталкивает на нужный выбор, вполне устраивает. Но если вы говорите: "Мне нужно 3 килограмма антоновки обыкновенной", а в ответ получаете "Антоновки? А еще у нас есть белый налив. И боровинка. А еще из кисло-сладких сортов есть бессемянка новая", то все это начинает раздражать.
Как улучшить выдачу? Просто сказать Яндексу, что вы точно уверены в том, что знаете, что хотите. Что в запросе нет ни ошибок, ни опечаток.
Для этого достаточно заключить поисковый запрос в кавычки. Например "маленький книжка" ( рис. 1.4):
Несмотря на неправильное окончание прилагательного, Яндекс отобразил результаты именно в той форме, которая была нужна. Фактически, здесь мы видим поиск по точной фразе или цитате. Это очень и очень эффективный способ поиска, который позволяет быстро получать правильные результаты. Мы говорим Яндексу: "Да, я точно знаю, чего хочу, а нужно мне то-то и то-то".
Однако поиск по точной фразе находит слова, которые расположены рядом. Если же нужно найти по отдельности "маленький" и "книжка", то запрос должен выглядеть как !маленький !книжка ( рис. 1.5):
Мы видим, что слова расположены достаточно близко, в точной форме, но не подряд.
Хорошо, но как быть, если мы тоже можем ошибаться? Скажем, нас интересуют все результаты "маленький книжка" и "маленькая книжка" и даже если есть "маленькое книжка"? Конструкция вида маленький & книжка позволяет находить слова в одном предложении с учетом их различных форм ( рис. 1.6):
Если в документе - неважно, на каком расстоянии, должно еще присутствовать слово "цена", то данный запрос будет выглядеть так: маленький & книжка && цена ( рис. 1.7):
увеличить изображение
Рис. 1.7. Поиск слов "маленький", "книжка" в одном предложении в разных формах и со словом "цена" в одном документе
Все эти запросы нужно набирать самостоятельно в браузере. Желательно немного поупражняться, подбирая другие примеры.
Поиск с учетом расстояний между словами
Для начала введем несколько терминов, взятых из глоссария.
Расстояние между словами a и b - это разница между номерами слов b и a. Таким образом, расстояние между соседними словами равно 1 (а не 0), а расстояние между соседними словами, стоящими "не в том порядке", равно -1.
Стоп-слова
В любом языке есть слова, которые встречаются намного чаще других. Слова, которые встречаются слишком часто, чтобы быть значимыми для поиска, называются стоп-словами. Как правило, это местоимения, предлоги и частицы. Поисковые машины обычно игнорируют стоп-слова, даже если они встречаются в тексте запроса.
Нормальная форма слова
Нормальной формой слова считается именительный падеж единственное число. Так, с точки зрения Яндекса, кот, коты, кота и т.д. - формы одного и того же слова, среди которых нормальной является форма кот.
А теперь начнем практическую работу. Для начала с помощью самого обычного запроса выясним, как называется самый популярный сайт ( рис. 1.8):
А какие еще сайты бывают? Самый красивый сайт? Самый интересный сайт? Самый старый сайт? Введем такую конструкцию: самый /2 сайт ( рис. 1.9):
Мы видим, что в результатах есть "Самый посещаемый сайт", "Самый официальный сайт" и даже "Самый лучший сайт". Впрочем, всего нашлось 10 миллионов результатов - наверняка там перечислены все "самые" сайты.
Все дело в том, что /2 означает число, указывающее максимально допустимое расстояние между двумя любыми словами запроса. Мы здесь четко указали, что на втором месте после "самый" должно что-то быть, а потом уже "сайт". Такой запрос не найдет результатов вроде "самый посещаемый и интересный сайт", поскольку между словами "самый" и "сайт" должно стоять всего одно слово.