Перейти к содержимому

Как искать на определенном сайте яндекс

  • автор:

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Продвинутый поиск в Яндекс

Оглавление

Особенности поиска в Яндекс

Предыдущая статья была посвящена тонкостям поиска в Google. Поисковая система Яндекс тоже имеет расширенные возможности поиска и продвинутые операторы. У Яндекс очень хороший охват русскоязычных сайтов, поэтому если целевой сайт на русском языке, то на этапе сбора информации имеет смысл воспользоваться также и Яндексом.

Синтаксис запросов в Яндекс отличается от Google: операторы называются по-другому и логика их работы отличается, аналоги каких-то гугловских операторов отсутствуют вовсе, а какие-то, напротив, являются уникальными только для Яндекса.

Пожалуй, главным отличием поиска Яндекса является свой собственный индекс, с огромным охватом сайтов на русском языке. А также свои собственные алгоритмы определения релевантности (насколько страница соответствует поисковому запросу) и ранжирования (как высоко в результатах поисковой выдачи должна находиться страница).

И хотя операторы поиска в Яндекс работают иначе чем в Google, они довольно гибкие для составления в том числе и сложных запросов по нескольким критериям. Я покажу несколько примеров Яндекс-дорков, с помощью которых можно найти пароли и другую очень интересную для пентестера информацию.

Итак, давайте познакомимся с продвинутыми приёмами поиска Яндекс, которые в любом случае пригодятся всем, кто что-то ищет в Интернете (то есть всем) – даже если вы не занимаетесь расследованиями на основе открытых источников.

Язык запросов Яндекс для расширенного поиска

Поиск по одному слову

Яндекс ищет не только по точной форме слова, но и по различным его формам (единственное-множественное число, различные падежи, различные глагольные формы и другое). В справке это не указано, но очевидно, что поиск производится также по синонимам слова

Поиск по фразе

Ищутся страницы, содержащие все слова из фразы. Как и для отдельных слов, поиск выполняется по различным словоформам, синонимам

недорогие авиабилеты

Найдёт страницы, содержащие фразы «недорогие авиабилеты», «дешёвые авиабилеты», «поиск дешёвых авиабилетов» и другие.

Поиск слова в заданной форме

Если вы не хотите, чтобы при поиске использовались различные формы слова либо его синонимы, то перед этим словом поставьте восклицательный знак (!):

!недорогие авиабилеты

Допустимо использовать несколько операторов ! в рамках одного запроса.

На самом деле, результаты поиска по-прежнему содержат документы с синонимами – возможно, этот оператор работает не всегда или влияют другие факторы.

Важные слова в поисковом запросе

дёшево +доехать +суварнабхуми +сукумвит

Необычная концепция – будет выполнен поиск документов, в которых обязательно присутствует выделенное знаком плюс (+) слово. Допустимо использовать несколько операторов + в одном запросе.

Т.е. по приведённому поисковому запросу обязательно будут найдены страницы, содержащие слова «доехать» «суварнабхуми» «сукумвит» и, возможно, слово «дёшево».

Поиск по точной цитате

Точно также как в Гугл, вы можете искать страницы, содержащие точную цитату. Для этого поместите её в кавычки.

"безопасно хранить свои денежные средства в батах"

Будут найдены страницы (документы) которые содержат все слова поискового запроса, именно в той последовательности и в точной форме, как они идут в самом запросе.

Поиск по цитате с пропущенным словом (словами)

Один оператор * соответствует одному пропущенному слову.

Вы можете использовать это только при поиске по точной цитате – т.е. внутри двойных кавычек.

"без труда не * и рыбку из пруда"

Правда иногда Яндекс издевается:

В общем, я так и не вспомнил, какое там именно слово…

Поисковый запрос с альтернативами

SVO | DME | трактор

Вы можете выполнить поиск страниц, в которых присутствует любое слово из запроса – это ещё называют логическим ИЛИ. Для этого используется оператор, обозначенный символом труба (|). Операторы отделяется от слов пробелами.

Допустимо использовать несколько операторов | в одном запросе.

Напомню, что в Google можно использовать оператор OR либо также использовать трубу.

Поиск любой из фраз

"большой адронный коллайдер" | "смешные кошки"

Вы можете использовать ИЛИ (|) вместе с поиском по точно совпадающим фразам.

В результате будут найдены страницы, содержащие фразу «большой адронный коллайдер», а также страницы с фразой «смешные кошки».

Использование скобок для группировки

обучение (java | PHP)

По умолчанию, логическое ИЛИ разбивает поисковый запрос на две части – то, что стоит до этого оператора и то, что стоит после него.

обучение java | PHP

привёл бы к тому, что поисковая система стала бы искать страницы с фразой «обучение java» и страницы с фразой «PHP». Но если нам нужно, чтобы были найдены страницы с фразой «обучение java» и страницы с фразой «обучение PHP», то нам нужно использовать скобки для отделения обязательной части от альтернативной.

Поиск документов, в которых отсутствует заданное слово

лечение аппендицита -самостоятельно

При поиске по фразе из нескольких слов, вы можете указать те слова, которые не должны встречаться на найденных страницах. Т.е. в результатах поиска будут те документы, на которых есть искомая раза, но без нежелательного слова.

В качестве оператора отрицания используется знак минус (). Исключается только слово, перед которым стоит оператор. При этом исключаемое слово должно размещаться в конце поискового запроса.

Допустимо использовать несколько операторов минус () в одном запросе.

Видимо, минус работает только со словами для поиска, но не работает с операторами, которые будут рассмотрены далее.

Продвинутые операторы

Уточнить поисковый запрос можно с помощью данных, относящихся к служебной информации о страницах. Например, можно ограничить поиск по:

  • типу файла
  • хосту
  • URL
  • языку страницы
  • дате

Синтаксис для уточнения поиска по данным параметрам называется «документные операторы».

Документный оператор рекомендуется указывать после текста поискового запроса и отделять от него пробелом. В одном запросе одновременно можно использовать несколько операторов, так же разделяя их пробелом. Например,

поиск site:www.yandex.ru mime:pdf

При использовании операторов, где в качестве параметра задается имя хоста (url, host и rhost), следует указывать главное зеркало сайта. Например,

host:lib.ru
host:www.lib.ru

Поиск по страницам, размещенным по заданному адресу (URL)

Для поиска по определённому адресу страницы используется оператор url: со следующим синтаксисом:

url:полный URL
url:имя хоста/папка/*

Регистр букв в адресе не учитывается.

Чтобы найти все документы, адреса которых начинаются с заданного значения, поставьте в конце URL символ *.

URL в запросе следует заключить в кавычки, если он содержит один из следующих символов:

Обратите внимание, что запрос:

уязвимость sql инъекция url:hackware.ru

Ничего не найдёт! Поскольку поиск будет проводиться именно по домашней странице hackware.ru (а не по всему сайту). Чтобы выполнялся поиск по всему сайту используйте звёздочку:

уязвимость sql инъекция url:hackware.ru/*

Параметр url: предназначен в первую очередь для поиска по определённым разделам сайта, например:

уязвимость sql инъекция url:hackware.ru/?cat=*

Будет выполнен поиск фразы «уязвимость sql инъекция» только по страницам вида hackware.ru/?cat= (категории).

Для поиска по всему целевому хосту используйте один из следующих параметров.

Поиск по всем поддоменам и страницам указанного сайта

site:URL сайта
уязвимость sql инъекция site:hackware.ru

Будут найдены документы, содержащие фразу «уязвимость sql инъекция» и размещенные на поддоменах и страницах сайта hackware.ru.

Поиск по страницам, размещенным на данном хосте

host:имя хоста в формате www.домен второго уровня.домен верхнего уровня

Идентичен оператору url: с заданным именем хоста.

sqli host:tools.kali.org

Будут найдены документы, содержащие слово «sqli» и размещенные на хосте tools.kali.org (один из поддоменов сайта kali.org).

Другой вариант поиска страниц на определённому субдомене – это использование оператоора rhost:

Идентичен оператору host:, но имя хоста записывается в обратном порядке: сначала домен верхнего уровня, затем домен второго уровня и т. д.

Для поиска по всем поддоменам заданного домена в конце URL поставьте символ *.

rhost:имя хоста в формате домен верхнего уровня.домен второго уровня.www

Вариант с подстановочным символом:

rhost:имя хоста в формате домен верхнего уровня.домен второго уровня.*

Пример, вывод всех страниц поддомена tools.kali.org:

rhost:org.kali.tools

Показать все страницы любых субдоменов kali.org, начинающихся на букву a:

rhost:org.kali.a*

Поиск по доменам

domain:домен

Обратите внимание, что домен может быть любого уровня. То есть можно указать домен верхнего уровня, такой как ru, net, org, name, com и т. д. Можно указать домен второго уровня, например, hackware, zalinux, yandex, google и т. д. Также можно указать домен любого другого уровня.

Пример поиска по домену верхнего уровня:

information security labs domain:edu

Будет найдена фраза «information security labs» только на сайтах доменной зоны edu.

Поиск по домену других уровней. Этот вариант будет искать любые домены второго и другого уровней с именем hackware на которых встречается слово «уязвимости»:

уязвимости domain:hackware

Будет выполнен поиск по доменом верхнего уровня tools и других уровней с этим же названием:

sqli domain:tools

Поиск по типу файлов

mime:тип файла

Поиск по документам в заданном типе файла. Поддерживаются следующие типы файлов:

анкета загранпаспорт mime:doc

Будут найдены документы в формате doc, содержащие слова «анкета» и «загранпаспорт».

Можно указать сразу несколько расширений для поиска, но обязательно объедините их логическим ИЛИ (|):

site:vasexperts.ru (mime:pdf | mime:doc | mime:docx)

Поиск по страницам на заданном языке

lang:язык
  • русский (ru)
  • украинский (uk)
  • белорусский (be)
  • английский (en)
  • французский (fr)
  • немецкий (de)
  • казахский (kk)
  • татарский (tt)
  • турецкий (tr)
passport lang:en

Будут найдены документы на английском языке, содержащие слово «passport».

Поиск по дате и диапазону дат

А вот в этом поиск Яндекса точно обогнал Google – у Гугла очень невнятный поиск по датам изменения документа, практически, можно сказать что его нет, т.к. результаты странные.

Вы можете выполнять поиск по страницам с ограничением по дате их последнего изменения.

Варианты поиска по дате

Изменение страницы соответствует указанной дате:

date:ГГГГММДД

Изменение страницы находится в интервале:

date:ГГГГММДД..ГГГГММДД

Изменение страницы находится до или после указанной даты (, >=):

date:

Дата изменения страницы указана частично:

date:ГГГГ**

Примечание. Год изменения указывается обязательно. Месяц и день можно заменить символом *.

Примеры, в которых ищется слово «фестиваль» в документах, для которых дата изменения соответствует 10.10.2014:

фестиваль date:20141010

Дата изменения находится в интервале между 10.10.2014 и 10.11.2014 включительно:

фестиваль date:20141010..20141110

Дата изменения позднее 10.11.2014:

фестиваль date:>20141110

Дата изменения соответствует 2014 году:

фестиваль date:2014**

Допустим, я хочу узнать, какие страницы сайта hackware.ru изменились в период с 10 июня 2018 года по 10 июля 2018 года:

site:hackware.ru date:20180610..20180710

Я хочу найти любые документы на любом сайте, в которых присутствует точная фраза "алексей милосердов" и которые изменены в период с 5 июля 2018 года по 10 июля 2018 года:

"алексей милосердов" date:20180705..20180710

Всего один документ с адресом https://student.knastu.ru/upload/works/__5dDvrTYvFwt9Z5YrqV5PRc0jiZYTcKgZzK.pdf

Кстати, можно посмотреть, какие ещё студенческие работы там есть:

site:student.knastu.ru/upload/works/

Поиск по заголовку

Вы можете искать по заголовку веб-страниц. Но в Яндекс это реализовано немного необычно – вы можете искать ИЛИ по заголовку ИЛИ по документу, но не одновременно и там и там.

Чтобы выполнить поиск по названию страницы, вы можете воспользоваться формой расширенного поиска: https://yandex.ru/search/advanced. Этот интерфейс расширенного поиска больше не работает, попробуйте альтернативный вариант: https://suip.biz/ru/?act=yandex-search

Либо к адресу страницы с результатами поиска добавьте &zone=title

Возможно имеется специальный оператор, чтобы не нужно было менять URI, но я не нашёл информации об этом. Напрашивается аналогия zone:title, но, на мой взгляд, это не работает.

Если вы об этом что-то знаете – то пишите в комментариях.

Поиск по точной форме слова

Мы уже рассмотрели этот вопрос – если фраза для поиска помещена в кавычки, то на страницах ищется точное соответствие. В противном случае ищутся все формы и синонимы слов.

Если вы хотите искать по точным формам слов, но вам не важен их порядок и слова не обязательно должны составлять одну фразу, то, по идее, каждое слово можно поместить в кавычки. Ещё один вариант – это отредактировать URI. Если там wordforms=all, то выполняется поиск по всем формам, а если wordforms=exact – то ищутся точные совпадения.

Яндекс дорки?

Поиск в Яндекс, безусловно, может оказаться полезным для исследователей на основе открытых источников. В том числе, при поиске утечек.

А как насчёт поиска в Яндекс для хакеров и пентестеров? Хотя язык запросов Яндекса менее гибок, всё равно и через Яндекс можно найти разнообразную чувствительную информацию и файлы, не предназначенные для всеобщего доступа.

Брутфорс поддоменов по одной букве

Мы уже рассматривали как с помощью Гугл перечислеть поддомены. Там же я говорил про плюсы и минусы этого способа. В Яндекс тоже есть такая возможность. Причём, для тех сайтов, которые я попробовал, Яндекс знает больше субдоменов чем Google!

Для этого можно использовать оператор rhost: Напомню, при нём домен/поддомен пишется в обратном порядке, т.е. начиная с домена верхнего уровня, затем домен второго уровня, затем поддомен третьего уровня и так далее.

Самое интересное – используя подстановочный символ * мы можем искать по части поддомена – к слову, Google не воспринимает частично написанные домены вообще.

Допустим, меня интересуют поддомены сайта kali.org. Я делаю запросы вида:

rhost:org.kali.a* rhost:org.kali.b* rhost:org.kali.c* rhost:org.kali.d* rhost:org.kali.e* rhost:org.kali.f* rhost:org.kali.g* rhost:org.kali.h* rhost:org.kali.i* … rhost:org.kali.t* … …

В результате я нашёл несколько новых субдоменов, которые не смог найти с помощью Гугл:

  • buildd-amd64.kali.org
  • eros.kali.org
  • eos.kali.org
  • iris.kali.org
  • images.kali.org

Можно создать скрипт и при правильно написанном алгоритме можно получить весь список субдоменов за несколько десятков запросов либо сотен запросов (в зависимости от выбранного алгоритма) – это может конкурировать с брут-форсом субдоменов по словарю. Самое важное – кроме Яндекса запросы никуда больше не делаются.

Аналогично для offensive-security.com с помощью Яндекса я нашёл субдомены, о которых не знал Гугл:

rhost:com.offensive-security.d*
  • download.offensive-security.com
rhost:com.offensive-security.f*
  • forums.offensive-security.com
rhost:com.offensive-security.i*
  • images.offensive-security.com
rhost:com.offensive-security.s*
  • support.offensive-security.com
  • screenconnect.offensive-security.com:8040

Поиск папок с открытым листингом

"Index of /" "Parent Directory"

В таких папках может быть что угодно – от публичных файлообменников до личных фото архивов.

Иногда там можно найти файлы со списком паролей:

Причём разных пользователей:

Пробуйте разные названия папок. Например, поиск папки admin листингом файлов:

"Index of /admin" "Parent Directory"

Поиск папки mail (иногда в них лежат электронные письма):

"Index of /mail" "Parent Directory"

Вариантов много, посмотрите также примеры для Google.

Поиск админок и страниц аутентификации

"Вход" url:."ru/admin"

"Вход" url:."ru/login"

Пробуйте свои варианты!

Поиск ключей для подключения по SSH

"Index of /.ssh/"

Заключение

У поисковой системы Яндекс большой охват сайтов на русском, а теперь ещё и на некоторых иностранных языках, особенно на английском.

Зная язык запросов Яндекса можно делать очень точные поисковые запросы, чтобы найти именно то, что вам нужно.

Что касается применения поиска Яндекс при пентестинге, то он хорошо подходит для поиска информации и документов на целевом сайте. Но возможности поиска дорков у Яндекса намного беднее.

Источники

  • https://yandex.ru/support/search/how-to-search/advanced-search.html
  • https://yandex.ru/support/search/query-language/qlanguage.html
  • https://yandex.ru/search/advanced

Связанные статьи:

  • Сбор информации о владельце сайта. Поиск сайтов одного лица (100%)
  • Продвинутый поиск в Гугл (100%)
  • Поиск человека по IP (кейс) (100%)
  • Инструкция по использованию HTTrack: создание зеркал сайтов, клонирование страницы входа (59.1%)
  • Как узнать настоящий IP сайта в Cloudflare (59.1%)
  • Получение имён пользователей сайта методом перебора (RANDOM - 6.6%)

факультете информационной безопасности от GeekBrains? Комплексная годовая программа практического обучения с охватом всех основных тем, а также с дополнительными курсами в подарок. По итогам обучения выдаётся свидетельство установленного образца и сертификат. По этой ссылке специальная скидка на любые факультеты и курсы!

Рекомендуется Вам:

4 комментария to Продвинутый поиск в Яндекс

Подскажите пожалуйста, можно ли каким-нибудь образом вернуть старый формат расширенного поиска на Яндексе. Регулярно пользовался поиском на конкретном сайте, поиском файлов с заданным расширением doc, docx, html, odg, odp, ods, odt, pdf, ppt, pptx, rtf, swf, xls, xlsx. Сейчас расширенный поиск изменился и этих фильтров не стало. С уважением, Кензиор Евгений

Alexey :

Приветствую! Очень странно, что убрали. Попробуйте такой интерфейс: https://suip.biz/ru/?act=yandex-search Там все возможности расширенного поиска, кроме поиска по языку и дате (не осилил — если будет интерес к той странице, то доделаю и их). Или попробуйте поискать в Интернете альтернативные интерфейсы. Или ещё один вариант (самый лучший) — выучить эти несколько фильтров поиска — о них рассказывается на этой странице. Например, для поиска по PDF документам достаточно добавить к поисковому запросу mime:pdf

Зачем учить фильтры поиска если они не работают? Когда убрали расширенный поиск с яндекса, то и фильтры перестали работать. Регулярно пользовался оператором "!" сейчас он выдаёт белиберду

Alexey :

  • сейчас поиск происходит не столько по самой фразе, сколько по смыслу, который в неё вкладывается (это главная причина)
  • исправление опечаток
  • если получено слишком мало результатов, добавляются результаты, которые могут не соответствовать изначальному запросу, но могут иметь отношение к результатам поиска
  • и очень многое другое

Эти дополнительные факторы могут дать довольно неожиданные результаты, в том числе ощущение, что «фильтры не работают». Простой поиск по совпадению слова или части слова уже давным-давно в прошлом.

Поисковые операторы Яндекса и Google: от базовых до продвинутых

Быстро находить в поисковых системах нужную и релевантную информацию — важный навык и для обычных пользователей, и для специалистов. Для вебмастеров и сеошников углубленная работа с поисковиками — ежедневная рутина. Поисковые системы постоянно улучшают свои алгоритмы, однако выдача все еще может быть неточной или не до конца релевантной в некоторых случаях.

Получить более точные и нужные данные помогут поисковые операторы. В статье разбираем основные операторы и спецсимволы, поддерживаемые Яндексом и Google.

Обзор поисковых операторов Яндекса
Первый уровень сложности: базовые операторы

Первый и самый простой оператор — кавычки "". Поисковый запрос, заключенный в кавычки, позволяет получить выдачу страниц, на которых этот запрос содержится в таком виде, как он указан в строке поиска (фиксируется количество слов во фразе).

Обратите внимание: во всех органических результатах выдачи содержится указанный запрос в точном виде. На результаты в блоке с рекламой действие оператора не распространяется.

Фиксации количества слов иногда может быть недостаточно, особенно если во фразе содержится много слов — в выдачу могут попадать варианты с измененным порядком слов и словоформой. Для более точного соответствия можно добавить оператор восклицательный знак «!». Этот оператор фиксирует форму слова (падеж, число, время). Сочетание кавычек с восклицательным знаком, к примеру, позволит зафиксировать количество слов в поисковом запросе и форму каждого слова:

Знак плюса «+» — еще один уточняющий оператор. Размещается перед словом, которое обязательно должно находиться на странице.

Операторы «», ! и + можно применять в Яндекс.Вордстате в процессе подбора ключевых слов и просмотра частотности по ним. От наличия или отсутствия операторов могут существенно отличаться результаты подбора.

К примеру, если вы вводите в Вордстате обычный запрос, без операторов, сервис покажет общую частотность — учитывая все варианты словоформ, варианты с разным порядком слов и другие вложенные фразы.

Если же нужно получить «чистую» статистику по конкретному ключевику — заключите его в кавычки и увидите совсем другую картину:

Оператор «+» в основном используется для фиксации стоп-слов (служебные части речи, местоимения и т. д.). По умолчанию они могут игнорироваться поисковой системой, но если их наличие влияет на смысл фразы — используйте оператор, чтобы получать релевантную выдачу.

Есть и оператор с обратным действием — знак минуса «-». Если перед словом в поисковом запросе указать знак минуса, из выдачи будут исключены все страницы, на которых это слово содержится. Вот пример:

Обратите внимание! Если отминусовать нужно цифру, а не слово, ее нужно предварительно заключить в кавычки — иначе Яндекс воспримет цифру со знаком минуса как отрицательное число.

Оператор звездочка «*» позволяет подставить во фразу любые пропущенные слова. К примеру, если указать запрос «следуй за * кроликом», поиск найдет все варианты совпадений с указанной фразой, включая те варианты, где вместо звездочки размещено любое слово. Важно: работает, только если фраза в кавычках.

Оператор вертикальная черта «|» используется для группировки слов при сложных запросах. Обозначает логическое «ИЛИ» и позволяет получить выдачу страниц, которые содержат любое слово из запроса — или одно, или другое.

Второй уровень сложности: продвинутые операторы поиска и фильтры

«site:» — с помощью этого фильтра можно произвести поиск не по всей базе сайтов, проиндексированных поисковой системой, а по конкретному сайту и его поддоменам. Кстати, этот оператор часто используют для проверки индексации сайта — достаточно просто указать запрос вида «site:example.ru», и в результатах поиска отобразятся все страницы, которые проиндексированы поисковой системой.

Пример использования оператора для поиска всех статей с упоминанием SEO на определенном сайте:

«host:» — этот оператор работает по такому же принципу, как и предыдущий, только позволяет сузить область поиска до конкретного хоста (поддомены не будут учитываться и выводиться в результатах поиска):

Хороший пример. Если бы использовался оператор site, в выдачу также попали бы статьи из блога, который размещен на поддомене blog.promopult.ru.

Вместо site и host можно использовать альтернативный оператор — «rhost:». Основные нюансы работы с этим оператором:

  • Если нужно произвести поиск только в рамках определенного сайта, без учета поддоменов — нужно прописать запрос в таком формате: «rhost:ru.example». Обратите внимание: адрес прописывается в обратном порядке!
  • Если нужно искать по сайту и его поддоменам, запрос должен выглядеть так: «rhost:ru.example.*».

Еще один схожий оператор — «url:». Производит поиск по определенному URL-адресу:

Оператор «domain:» — позволяет выполнить поиск по определенным доменным зонам. На примере ниже в результатах поиска будут только те сайты, домены которых расположены в зоне «ru» (блок контекстной рекламы — исключение, на него действие оператора не распространяется).

Ниже пройдемся еще по нескольким интересным операторам.

«inurl:» — ищет страницы, в URL которых содержится нужный запрос (слово или фраза).

«lang:» — используется для фильтрации страниц выдачи по нужному языку (например, позволяет вывести только русскоязычные результаты или страницы только на английском). Для этого необходимо указать двухбуквенный код нужного языка (ru, en и т. д.).

«date:» — пригодится тем, кому нужно получить информацию, опубликованную в конкретный период времени или самые свежие данные.

В примере выше выдача содержит страницы, последнее изменение на которых произошло в январе 2021 года или позже.

А здесь после двоеточия указан диапазон дат: 20180101..20191231. Соответственно, в выдаче — информация за период с начала 2018 по конец 2019 года.

«mime:» — оператор для поиска файлов нужного типа. Оператор поддерживает следующие типы файлов: pdf, xls, ods, rtf, ppt, odp, swf, odt, odg, doc.

Какие есть способы поиска информации в «Яндексе»? ⁠ ⁠

1. Как найти точную фразу или форму слова
С помощью оператора « ». Заключите фразу или слово в кавычки, и «Яндекс» будет искать веб-страницы, где есть ровно такая фраза (форма слова).

Пример:
[«я к вам пишу»]

2. Как найти цитату, в которой пропущено слово
Забыли слово в цитате? Возьмите всю цитату в кавычки, а вместо пропущенного слова поставьте звездочку . Цитата найдется вместе с забытым словом.

Пример:
[«ночь улица аптека»]

3. Как найти любые из нескольких слов
Просто перечислите все подходящие варианты через вертикальный слеш: |. «Яндекс» будет искать документы с любым из этих слов.

Пример:
[ананасы | рябчики | шампанское]
[дачные участки (рублевское | киевское | минское) шоссе]

4. Как найти слова в пределах одного предложения
Используйте оператор с красивым именем «амперсанд» — &. Если соединить слова амперсандом, «Яндекс» найдет документы, где эти слова стоят в одном предложении.

Пример:
[памятник Пушкину & Псков]

5. Как найти документ, содержащий определённое слово
Поставьте перед нужным словом плюс, не отделяя его от слова пробелом. В запрос можно включить несколько обязательных слов.

Пример:
[Памятник Шолохову + бульвар]

6. Как исключить слово из поиска
Поставьте минус перед словом, которое Вы не хотите видеть в ответах. Так можно исключить даже несколько слов:

Пример:
[мумий тролль мультфильм -рок -лагутенко]
[схемы вязания спицами -купить]

7. Как искать на определенном сайте Для этого подойдет оператор site. Он позволяет прямо в запросе указать сайт, на котором нужно искать. Только обязательно поставьте после site двоеточие.

Пример:
[конституция рф site:consultant(точка)ru]
[маяковский окна site:lib(точка)ru]

8. Как искать документы определенного типа
Вам нужен оператор mime. Поставьте в запросе mime, двоеточие и затем тип документа, который Вам нужен. Например, pdf или doc.

Пример:
[заявление на загранпаспорт mime:pdf]

9. Как искать на сайтах на определенном языке
С помощью оператора lang. После lang нужно поставить двоеточие и написать, на каком языке Вам нужны документы. Если это русский язык, то нужно указать ru, если украинский — uk. Белорусский язык обозначается как be, английский — en, французский — fr.

Пример:
[void glClearColor lang:ru]
Источник

Расширенный поиск Яндекса (и Гугла) с помощью установленного скрипта или в интерфейсе

В яндекс-поисковике, как и в Гугле, есть настройки расширенного поиска (по датам, документам, сайтам, стране, языку, . ) и специальные страницы для расширенного поиска. То и другое бывает неудобно из-за интерфейса — большого количества нажимаемых кнопок, кликов и движений. Для некоторых (частоиспользуемых) режимов поиска сделаны юзерскрипты с выбором одной из десятков кнопок в один клик. На экране видны лишь несколько стартовых кнопок, работающих как спадающие списки по наведению мыши.

Такой скрипт, когда-то бывший без спадающих списков, давно работал на страницах Гугла, и, судя по количеству скачиваний, приобрёл популярность среди англоязычных пользователей (есть выбор 5 языков интерфейса). Однажды подумалось, что его несложно будет перенести на Яндекс, и на выходных за пару дней адаптация и перекраска под цвета Яндекса была сделана, и теперь он представляется «целевой аудитории» — людям из IT, которым иногда приходится много искать и которым привычно устанавливать дополнительные скрипты и ходить по гитхабам.

Кроме утилитарной пользы, скрипт может быть интересен как полигон для отработки интерфейсных решений. Связка 2-3 скриптов в перспективе может начать работать как мета-поисковик, всё для этого уже есть, кроме последних штрихов — поставить связующие кнопки, портировать на mаilru и другие поисковики.

Сейчас же — рассмотрим, какие особенности Яндекса добавились в ранее существовавшее решение для Гугл.

Первое и единственное ограничение у Яндекса, которое бросается в глаза — это отсутствие поиска за последние часы. Скорее всего, у Яндекса ещё нет такой функциональности, вопрос на toster.ru ответа не принёс, но сейчас, может быть, что-то напишут разработчики из Яндекса в комментариях.

Появилось и расширение функций в поиске по документам — интерфейс запросов к Яндексу позволяет искать по группе типов документов (мультиселект в настройках), а Гугл каждый раз — только по одному типу документов (PDF, DOC, SWF, . ).

В остальном — режим специальных настроек настолько хорошо пересекается, что позволил сделать похожим не только интерфейс, но и хранение параметров настроек. Это — поиск по сайту (домену) и поиск за последний интервал времени (более дня).

Подробности хранения настроек — решение с внешним localStorage

Ранее для Гугла аналогичное расширение приобрело сохранение настроек поиска. Просто потому что список своих доменов или язык интерфейса иногда желательно менять, а изменения прямо в скрипте — мало, что привычно лишь программистам-фронтендщикам, ещё и при довольно частых обновлениях нет возможности сохранить код части исправленного пользователем скрипта от общего обновления. Если появляются хранимые (в localStorage) настройки, то вопрос снимается.

Но тут у Гугла обнаружилась привычка стирать локальную память! С этим сталкивались ранее и пользователи Фейсбука, и для решения этой проблемы была статья на Хабре и скрипт по другому поводу (букмарклет закладок с прокруткой скролла окна). Здесь — аналогично, требовалось бежать с домена Гугла куда-нибудь на другой домен, куда скрипты-чистильщики не дотянутся. Организовано общение с тихой скромной страницей на github.io, где всё надёжно хранилось, почти как в банке. (Ссылка эта пригодится после установки скрипта, чтобы увидеть, куда настройки сохранились.)

Для Яндекса это вылилось в то, что хранение его настроек тоже было сделано на том же домене (github.io). Это немедленно привело к тому, что 2 разных скрипта, разных домена и разные поисковики приобрели общие настройки. Нет, их крайне несложно разделить, но зачем? Список любимых сайтов для поиска, язык интерфейса, и впоследствии — хранение последних интервалов дат — всё это стало появляться одинаково как в Гугле, так и в Яндексе, при условии пользования одним и тем же браузером.

Именно этот механизм сейчас даёт возможность очень просто сделать метапоиск — добавить в сохраняемые настройки поле для команд — просто команду «искать» или «искать с настройками», или «искать в выбранных поисковиках»). В дальнейшем, можно пофантазировать, что появится и синхронное управление картами, и просмотр в разделах, например, новостей, картинок. Согласитесь, удобно ведь ходить по карте в одном окне, а в соседнем — иметь синхронную копию в картах Гугл, чтобы переключаться на то окно, где более полная информация. И выдача картинок будет заметно разная и дополняющая.

Справочник вариантов расширенного поиска в Яндексе и Гугле

Этот список, возможно, дополнят специалисты-пользователи и разработчики компаний (дополню по комментариям или ЛС).
Все способы и виды сведены в список в целях организации небольшого справочника.
Многое в интерфейсе юзерскрипта не реализовано. Что реализовано — указано.

В Яндексе:

  • по региону
    в интерфейсе — поле с подсказками, где выбирается «регион» — страна, область или город;
    в запросе&rstr= c магическим многозначным числом со знаком, совпадающим с другим недокументируемым параметром lr для своего региона; не всё работает — например, поиск по Маниле (rstr=-10629, это же Филиппины) не сильно отличается от общего;
  • по сайту или домену
    в интерфейсе — вводим в поле название домена (2 или 3 уровня, без продолжения)
    в строке поиска — пишем (без кавычек) " site:3dnews.ru" или подобное;
    Yandex Extra Buttons — спадающий список заранее прописанных доменов под кнопкой «site». Состав списка можно менять в настройках, через кнопку site--Настройки--форма настроек--перезагрузка страницы. Сохраняется во внешнем localStorage. Свой список доменов полезно скопировать для хранения, переноса на другой браузер и для восстановления.
    в запросе&site=anysite.ru;
  • по стране
    в интерфейсе — переключается кнопка со смыслом «своя страна», т.е. на домене .by это — выбор «by» и не более;
    в запросе&country=by, при этом можно указать и некоторые другие страны, по которым работает Яндекс, но что из них реально работает — не документировано. Например, &country=tr или com.tr не работает, как и множество «не близких» стран, не обязательно мелких;
  • точный запрос
    в интерфейсе — отдельная кнопка в подзаголовке или на специальной странице;
    в строке поиска — обрамить все слова или часть из них (составляющие точную часть запроса) кавычками;
    в запросе&wordforms=exact
  • по языку страницы
    выбор языков небольшой, но он покрывает все страны, где Яндекс присутствует как отдельный конкурирующий поисковик, плюс английский, немецкий, французский; (этот список может быть кандидатом на ещё одну кнопку в юзерскрипте, но многие ли пользуются этой настройкой? Скорее всего, нет);
  • по типам (множественное число) документов
    в интерфейсе — выбрать из мультиселектового списка; при каждом клике сменяется выдача по аяксу (без перезагрузки); на странице advanced — выбрать типы из 14 (сейчас) чекбоксов;
    в строке поиска — дописывают (без кавычек) " mime: pdf" или подобное, поддерживается много типов, но один на запрос; что интересно, такой выбор типов НЕ поддерживается скриптами подзаголовка — очевидно, это — более старый способ выбора параметра;
    Yandex Extra Buttons — спадающий список заранее прописанных типов документа под кнопкой «PDF», которая сама по себе тоже выбирает указанный тип; по кликам страница подхватывает результаты и изменяет список выбранных типов в подзаголовке; скрипт устраняет баг отображения — подкрашивает кнопку типов, если хотя бы один тип был выбран; таким образом, кнопки юзерскрипта, по сути, инициируют «клики» по типам в подзаголовке, сами не отображают результаты мультивыбора, но работают и без подзаголовка (он появляется сам после первого клика);
    в запросе&mime=rtf или &mime=rtf%2Cdoc, указывая все выбранные типы; работает и &mime=rtf&mime=doc и далее; запросы идут по AJAX, но с главной таким же способом можно отправить и не аяксовый запрос;
  • по последнему интервалу дат
    в интерфейсе — 3 отдельных кнопки в подзаголовке или 5 — на спецстранице;
    Yandex Extra Buttons — 4 спадающих списка в виде изначально небольших 4 кнопок — выбор за последние несколько: дней, недель, месяцев, лет. Выбранное значение сохраняется в настройках и перемещается в начало списка, чтобы при повторном таком же выборе было достаточно только нажать кнопку. Технически реализуется через запрос по произвольному интервалу дат (раздел ниже), страница запрос выполняет по AJAX, но с главной работает как обычная перезагрузка страницы;
    в запросе — магический параметр &within=число для некоторых интервалов; например, &within=1 — за 2 недели; 77 — за сутки, 2 — за месяц; 3 — за 3 месяца; 4 — за полгода, 5 — за год, 6 — за 2 года и т.д., 7 — за текущий день, 8 — за 3 суток или 4 дня (неизвестно точно, не проверялось), 9 — за 8 дней; можно попроверять, на результирующей странице интервал указывается с точностью до дня, а результаты — с точностью от часа до дня;
  • по интервалу дат
    в интерфейсе — 2 поля с дейт-пикерами (табличками для выбора дат из календаря);
    в запросе&from_date_full=11.01.2016&to_date_full=19.01.2016

Есть ряд других более специфических параметров, язык запросов (например, минус-слова и упомянутые кавычки), которые не будем рассматривать, но часть их могут оказаться в интерфейсе юзерскрипта расширенного поиска. Кроме того, у Яндекса есть ряд типов страниц (картинки, видео, новости, Маркет, и т.д.), где запросы могут иметь особенности (например, есть поиск по изображениям, поиск географического места на карте). Скрипт же сейчас покрывает основное поле — текстовый поиск.

В разделе Яндекс-новостей расширенный поиск идёт по другим именам параметров, и скрипт на данном этапе в этом разделе не выполняется. У Гугла же в разделе новостей действуют те же правила построения запросов, скрипт для Гугла работает во всех его основных разделах.

В Гугле:

  • по типу (единственное число) документа
    в интерфейсе — advanced_search — file type:
    — один из 10 форматов; текстовым запросом могут искаться и другие типы, кроме названных в списке;
    в строке поиска — дописывают (без кавычек) " filetype: pdf" или подобное;
    Google Search Extra Buttons — пока что сделано как 2 отдельных кнопки (без списков) для PDF и DOC (прочие типы в Гугле достаточно удобно задавать в строке поиска, поэтому много типов документов было введено, только начиная со скрипта для Яндекса);
    в запросе&as_filetype=xls
  • по последнему интервалу дат
    в интерфейсеSearch Tools — (Any Time | Past), далее — 5 вариантов выбора, или есть вариант задания любого интервала дат здесь же или на спецстранице;
    Google Search Extra Buttons — 5 спадающих списков в виде изначально небольших 5 кнопок — выбор за последние несколько: дней, недель, месяцев, лет, часов (в дополнение к тому же в Яндексе). Выбранное значение сохраняется в настройках и перемещается в начало списка, чтобы при повторном таком же выборе было достаточно нажать кнопку;
    в запросе — 2 вида запросов с теми же результатами, но с разным дизайном страницы выдачи
    &as_qdr=m2 — вид с чёрным заголовком;
    &tbs=qdr:h1 — более новый вид; вместо «h» ставится h, d, w, m, или y; число — количество размерных единиц или пусто, что будет равносильно 1;
  • по интервалу дат
    в интерфейсеSearch Tools — (Any Time | Past) — Custom Range. ; на спецстранице — выбор только по нескольким последним интервалам дат (раздел выше);
    Google Search Extra Buttons — отдельная кнопка, сразу вызывающая форму интерфейса; на главной — нет её поддержки, поэтому кнопка скриптом не отображается;
    в запросе&tbs=cdr%3A1%2Ccd_min%3A12%2F29%2F2015%2Ccd_max%3A1%2F5%2F2016;
  • по сайту или домену, в том числе верхнего уровня (.com, .cc, . )
    в интерфейсе — на странице расширенного поиска (значок зубчатки — Advanced Search);
    в строке поиска — дописывают (без кавычек) " site: anysite.com" или подобное, в том числе домен верхнего уровня без точки;
    Google Search Extra Buttons — отдельная кнопка со спадающим списком с заранее прописанными доменами, список которых можно менять в настройках. При клике по начальной кнопке она не инициирует поиск, а только выводит текст в строку поиска, что удобно для поправки домена. Поэтому первый домен можно вообще задавать пустой строкой;
    в запросе&as_sitesearch=anysite.com;

Другие параметры — у Гугла есть ряд других параметров для текстового поиска и язык запросов, подробное рассмотрение которых выходит за рамки цели статьи, но они могут оказаться в будущем в интерфейсе юзерскрипта.

  • точное слово или группа
  • любое из слов
  • исключая слова
  • интервал размерностей (кг, денежные единицы, годы)
  • по языку страницы
  • в регионе (государства)
  • по месту на странице
  • семейный фильтр
  • по наличию лицензий

По теме организации метапоиска по обычным запросам

(Дальше пойдут планы и фантазии, интересные разработчикам интерфейсов.)

В самом простом виде метапоиск — это просмотр результатов в 2 соседних окнах одного браузера. Дополнительно можно поисключать одинаковые ответы из второго окна. Если задаться целью получить выдачу в одно окно, нужно решать, в каком месте списка внедрять элементы списка из второго окна. Скорее всего, удобно внедрять на примерно ту же позицию, которую занимал элемент во 2-м окне. И, конечно, указывать, от какого поисковика пришли ответы, чтобы у пользователя накапливалась в памяти статистика, по каким запросам от какого поисковика он получил себе полезный ответ.

Замечание по политике поисковиков. Делать метапоиск в одном окне технически невозможно, потому что современные крупные поисковики строго следят, чтобы запрос выполнялся не в фрейме, чтобы ответ приходил в настоящую страницу, а не в XMLHTTP-объект. Это связано с доходами от сопутствующей рекламы, составляющих ныне основной хлеб любого поисковика. Для пользователя, наоборот, важен результат и максимум — тот движок, который его даёт.

Метапоиск на скриптах — это вероятность близкого будущего. Для реализации — коды скриптов имеются на Гитхабе (Yandex, Google), приветствуются новые решения.

UPD: Кто поможет сделать белорусскую, казахскую и турецкую локализации?

объём и формат

UPD2 2016-01-22: первичные кнопки сделаны как стрелки, по стилю кнопки Яндекса. Скриншоты в статье заменены.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *