Как найти что то на сайте

Хитрости поиска в интернете – как быстро найти, то что вам нужно

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Вы когда-нибудь были разочарованы результатами веб-поиска? Конечно, мы все были там! Однако, для более эффективного поиска в интернете существует несколько базовых навыков, которые необходимо изучить, чтобы сделать поиск более успешным.

Будьте конкретнее

Чем более конкретнее будет поисковый запрос с самого начала, тем более успешным будет поиск. Например, если вы ищете «кофе», вы получите гораздо больше результатов, чем вам нужно; однако, если вы сузите его до фразы естественного языка «жареный кофе арабика в Самаре», вы добьетесь большего успеха.

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Естественный язык – это способ, которым вы говорите в обычной жизни, хотя вы можете не говорить «жареный кофе арабика в Самаре, когда говорите о кофе, но если вы будете использовать эту конкретную фразу при поиске кофе, сваренного в Самаре, то быстрее найдёте то, что ищете.

Используйте кавычки, чтобы найти конкретную фразу

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

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

Если вы ищете точную фразу, поместите её в кавычки. В противном случае вы получите огромного количеством бесполезных результатов.

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

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

Поиск на любом сайте

Если вы когда-либо пытались использовать собственный инструмент поиска веб-сайта, чтобы найти что-то, и не добились успеха, вы определенно не одиноки! Однако, вы можете использовать глобальную поисковую систему для поиска по любому сайту, и, поскольку большинство инструментов поиска по сайту не так хороши, это хороший способ найти то, что вы ищете, с минимальными усилиями.

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Просто используйте команду в строке поисковой системы: site: затем URL-адрес веб-сайта, по которому вы хотите выполнить поиск. Например, site:webznam.ru «как монетизировать видео», введенный в Яндексе, вернет результаты поиска только с указанного домена, связанные с монетизацией видео.

Найти слова в веб-адресе

Вы можете осуществлять поиск по веб-адресу с помощью команды inurl через Google; это позволяет вам искать слова в URL.

Это просто ещё один интересный способ поиска в интернете и поиска сайтов, которые вы, возможно, не нашли, просто введя слово или фразу. Например, если вы хотите найти результаты только с сайтов, в URL-адресе которых содержится слово «website», вы должны включить этот запрос в строку поиска Google: inurl: website. Результаты вашего поиска будут содержать только сайты с этим словом в URL.

Поиск в заголовках веб-страниц

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Например, если вы хотите получить результаты поиска только со словосочетанием «теннисный чемпионат», вы должны использовать этот синтаксис: allintitle: теннисный чемпионат

Это вернет результаты поиска Google со словами «теннисный чемпионат» в заголовках веб-страниц.

Просмотр кэшированной версии сайта

Если сайт или контент на странице был удалено, вы больше его не видите, верно? Это не обязательно правда. Google хранит кэшированную копию большинства сайтов. Это архивная версия веб-сайта, которая позволяет вам легко просматривать информацию или страницы, которые были удалены (по какой-либо причине).

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Это также удобная функция, когда веб-сайт страдает от слишком большого трафика и не отображается правильно.

Какие страницы ссылаются на определенный сайт

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

Например, если вы хотите знать, какие страницы ссылаются на такой сайт, как наш, вы должны использовать эту команду поиска: link:webznam.ru

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Результатом этого поиска стали 1240 страниц других сайтов, которые ссылаются на сайт WebZnam.

Поиск конкретных слов на веб-странице

Скажем, вы ищете конкретную концепцию или тему, возможно, чьё-то имя, бизнес или конкретную фразу. Вы используете свою любимую поисковую систему, нажимаете на несколько страниц и кропотливо просматриваете тонны контента, чтобы найти то, что ищете. Правильно?

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Используйте Basic Math, чтобы сузить результаты поиска

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Найти конкретные форматы файлов

Поисковые системы не просто индексируют веб-страницы, написанные на HTML и других языках разметки. Вы также можете использовать их для поиска большинства популярных форматов файлов, включая файлы PDF, документы Word и электронные таблицы Excel.

Расширение запроса с помощью подстановочных знаков

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

Попробуйте несколько поисковых систем

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Чем внимательнее вы будете выбирать поисковую систему, тем успешнее будут ваши поиски. Проверьте этот список поисковых систем, чтобы использовать в следующий раз, когда вы что-то ищете.

У вас будет большой соблазн воспользоваться вашей любимой поисковой системы и использовать только самые известные функции; тем не менее, большинство поисковых систем имеют широкий спектр расширенных опций поиска, инструменты и сервисы, которые позволяют здорово экономить время. Всё это может сделать ваши поиски более продуктивными.

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

Источник

Поиск ключевых слов и информации на странице в браузере

Каждый день человек сталкивается с большими объемами новой информации. В интернете существуют миллионы веб-страниц, на которых можно найти необходимые данные. По этой причине тратится много времени на то, чтобы отыскать необходимый абзац или несколько ключевых слов в огромном количестве выдаваемого браузерами текстом. Человеку сложно быстро сориентироваться в огромных текстах, размещенных на разных сайтах. Острая необходимость быстро найти информацию возникает в профессиональной деятельности бухгалтеров, юристов, редакторов и писателей.

Но что если на поиск необходимой информации совершенно нет времени, а найти какое-либо слово нужно как можно скорее? В этом случае нужно включать функцию поиска по странице, встроенную практически во всех компьютерные программы для работы с текстом. Основными из этих программ являются текстовые редакторы и браузеры для выхода в интернет. В каждом из них есть определенные горячие клавиши, которые позволяют быстро отыскать все вхождения словосочетания или целого предложения.

Быстрый поиск необходимых слов

Для быстрого поиска ключевого слова или фразы в браузере или текстовом документе можно использовать функцию «поиск на странице». Горячие клавиши помогают искать нужные абзацы и облегчают работу с поисковыми системами, позволяют быстро редактировать текст.

При использовании любого браузера — Гугл Хром, Яндекс Браузер, Мозилла, Сафари — можно пользоваться горячими клавишами, для чего нужно сделать такой шаг: в поисковой системе или текстовом документе необходимо нажать комбинацию клавиш Ctrl + F. При использовании планшетов, компьютеров и телефонов компании Apple подходит сочетание клавиш Cmd + F. Это действие откроет окно для ввода слов, необходимых для поиска.

Строка поиска в разных браузерах может находиться в таких местах:

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

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Поиск в текстовом редакторе

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

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Возможности поисковой панели

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

Чтобы сделать поиск по странице в браузере Опера, нужно нажать клавишу «/», и искомое предложение или словосочетание на странице выделится цветом. Если при этом курсор мыши находится в каком-либо поле, то функция поиска не будет работать.

Функция поиска в браузерах — лучший способ быстро найти необходимую информацию по ключевым словам или фразам. Ею удобно пользоваться при ограниченном времени выхода в интернет или просмотре большого количества документов.

Видео

Это видео поможет вам научиться быстро находить необходимую информацию в интернете.

Источник

Как искать слово на веб-странице

Если вы хотите найти что-то на веб-странице, вы можете выполнить поиск. Узнайте, как искать слово на странице с помощью функции «Найти слово» основных веб-браузеров или поисковой системы, такой как Google.

Как искать слово с помощью Command / Ctrl + F

Самый простой способ найти слово на странице — использовать функцию «Найти слово». Он доступен в основных веб-браузерах, включая Chrome, Microsoft Edge, Internet Explorer, Safari и Opera.

Вот метод сочетания клавиш:

Откройте веб-страницу, которую хотите найти.

Press Ctrl + F в Windows и Linux. Нажмите Command + F на Mac.

Введите слово (или фраза), которую вы хотите найти.

Press вводить.

Веб-страница прокручивается до ближайшего вхождения слова. Если слово встречается на просматриваемой веб-странице более одного раза, нажмите вводить перейти к следующему вхождению. Или выберите стрелки в правой (или левой) части окна «Найти слово».

Как искать слово в строке меню Mac

Другой способ поиска на веб-страницах — использовать соответствующую строку меню. На Mac используйте следующий процесс, независимо от используемого вами браузера. Используйте этот процесс при использовании Safari или Opera.

Откройте веб-страницу, которую хотите найти.

Перейдите в строку меню вверху страницы и выберите Редактировать.

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Выбирайте Найти на этой странице. В некоторых браузерах может быть опция Найдите.

В зависимости от используемого вами браузера вам, возможно, придется сделать четыре шага, а не три. Например, в Google Chrome наведите курсор мыши на Найдите, А затем выберите Найдите.

Как искать слово с помощью элементов управления браузера

Если вы используете ПК с Windows или Linux, или если вы хотите использовать веб-браузер, а не операционную систему, вот что вы делаете для каждого основного браузера (за исключением Safari и Opera).

Эти инструкции должны работать и для соответствующих мобильных браузеров.

Для Google Chrome, Mozilla Firefox и Microsoft Edge:

Откройте веб-страницу, которую хотите найти.

Выберите Еще значок (он находится в правом верхнем углу окна браузера).

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Выбирайте Найдите or Найти на этой странице.

Как искать слово с помощью Google

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

Зайдите в Google. Или используйте функцию поиска браузера, если он настроен на использование Google в качестве поисковой системы.

Тип сайт за которым следует двоеточие ( : ) и название веб-сайта, на котором вы хотите выполнить поиск. Должно получиться так:

сайт: lifewire.com

После этого оставьте поле и введите условия поиска. В целом должно получиться примерно так:

site: lifewire.com Приложения для Android

Press вводить для отображения результатов поиска.

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Результаты поиска поступают с указанного вами веб-сайта.

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Чтобы еще больше сузить результаты поиска, заключите поисковые запросы в кавычки, чтобы поисковая система начала искать именно эту фразу.

Источник

Как правильно искать в интернете нужную информацию?

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

Поиск информации в интернете – как быстро находить именно то что нужно?

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

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

Способы поиска информации в интернете: почему стоит пользоваться несколькими поисковыми системами?

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

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

Как осуществляется поиск информации в сети интернет — зачем и как искать «глубже»?

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

Именно поэтому не нужно останавливаться на том, что вы нашли по первым двум-трем ссылкам. Не дайте себя обмануть, просмотрите еще несколько сайтов. Там может оказаться более актуальная и менее поверхностная информация.

Почему нужно предельно четко формулировать поисковый запрос?

Правильная формулировка запроса – одно из наиболее важных условий для эффективного поиска. К примеру, если поиск по слову «Москва» выдает 951 000 000 результатов, то поиск по запросу «Квартира в Москве» выдает уже 121 000 000 результатов, а по запросу «квартира в Москве недорого снять без посредников» поиск и вовсе выдаст 9 460 000 веб-страниц. Чем больше слов в запросе, тем меньше поисковая выдача.

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

На картинке, приведенной выше, можно увидеть, что последний поисковый запрос выдал всего 10 результатов, так как запрос сформулирован достаточно криво. Если написать «снять квартиру в Москве без посредников иностранцу посуточно недорого», то поисковая выдача будет состоять уже из 83 000 результатов, хотя смысл не поменялся, изменился лишь порядок слов в запросе.

Что такое модификаторы и как их использовать?

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

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Как правильно искать информацию в интернете?

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

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

Чем полезно цитирование и как его можно использовать при поиске?

Если у вас есть свой блог или информационный сайт, данная функция может вам пригодиться. Если вам интересно, ссылался ли кто-нибудь на ваш сайт или блог в своих статьях, вы можете узнать об этом с помощью цитирования. Для этого введите в поисковую строку команду «link:» (без кавычек) и после двоеточия укажите необходимый источник. К сожалению, данный модификатор не актуален для Яндекса.

Выводы

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

Пожалуйста, опубликуйте свои мнения по текущей теме статьи. Мы очень благодарим вас за ваши комментарии, дизлайки, лайки, отклики, подписки!

Дайте знать, что вы думаете по этой теме статьи в комментариях. Мы очень благодарим вас за ваши комментарии, отклики, дизлайки, подписки, лайки!

Источник

Поиск на сайте своими руками

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

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

У читателя может возникнуть вопрос: зачем писать все с нуля, если все уже давно написано? Да, у крупных поисковиков есть API, есть такие клевые проекты, как Sphinx и Apache Solr. Но у каждого из этих решений есть свои преимущества и недостатки. Пользуясь услугами поисковиков, типа Google и Яндекс, Вы получите множество плюшек, таких как мощный морфологический анализ, исправление опечаток и ошибок в запросе, распознавание неверной раскладки клавиатуры, однако без ложки дегтя тут не обойдется. Во первых, такой поиск не интегрируется в структуру сайта — он внешний, и Вы не сможете указать ему, какие данные наиболее важны, а какие не очень. Во вторых, содержимое сайта индексируется только с определенным интервалом, который зависит от выбранного поисковика, так что если на сайте что-нибудь обновится, придется дожидаться момента, когда эти изменения попадут в индекс и станут доступными в поиске. У Sphinx и Apache Solr дела с интеграцией и индексированием гораздо лучше, но не каждый хостинг позволит из запустить.

Ничто не мешает написать поисковый механизм самостоятельно. Предполагается, что сайт работает на PHP в связке с каким-нибудь сервером баз данных, например MySQL. Давайте сначала определимся, что требуется от поиска на сайте?

В конце статьи будет показан пример реализации поиска на примере простого интернет-магазина. Тем, кому лень все это изучать и просто нужен готовый поисковик, можно смело забирать движок из репозитория GitHub FireWind.

Принцип работы

Подготовка

Задача поставлена, теперь можно перейти к делу. Я использую Linux в качестве рабочей ОС, однако постараюсь не использовать ее экзотических возможностей, чтобы любители Windows смогли «собрать» поисковый движок по аналогии. Все, что Вам нужно — это знание основ PHP и умение обращаться с MySQL. Поехали!

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

Теперь вооружаемся своим любимым текстовым редактором и подготавливаем каркас:

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

Морфологический анализатор

Русский язык — довольно сложная штука, которая радует своим разнообразием и шокирует иностранцев конструкциями, типа «да нет, наверное». Научить машину понимать его, да и любой другой язык, — довольно непростая задача. Наиболее успешны в этом плане поисковые компании, типа Google и Яндекс, которые постоянно улучшают свои алгоритмы и держат их в секрете. Придется нам сделать что-то свое, попроще. К счастью, колесо изобретать не придется — все уже сделано за нас. Встречайте, phpMorphy — морфологический анализатор, поддерживающий русский, английский и немецкий языки. Более подробную информацию можно получить тут, однако нас интересуют только две его возможности: лемматизация, то есть получение базовой формы слова, и получение грамматической информации о слове (род, число, падеж, часть речи и т.д.).

Нужна библиотека и словарь для нее. Все это добро можно найти тут. Библиотека находится в одноименной папке «phpmorphy», словари расположены в «phpmorphy-dictionaries». Скачиваем последние версии в корневую папку проекта и распаковываем:

Отлично! Библиотека готова к использованию. Пришло время написать «оболочку», которая абстрагирует работу с phpMorphy. Для этого создадим еще один файл morphyus.php в корневой директории:

Пока реализовано только два метода. get_words разбивает текст на массив слов, фильтруя при этом HTML-теги и сущности типа » «. Метод lemmatize возвращает массив лемм слова, либо false, если таковых не нашлось.

Механизм ранжирования на уровне морфологии

Давайте остановимся на такой единице языка, как предложение. Наиболее важной частью предложения является основа в виде подлежащего и/или сказуемого. Чаще всего подлежащее выражается существительным, а сказуемое глаголом. Второстепенные члены в основном употребляются для уточнения смысла основы. В разных предложениях одни и те же части речи порой имеют совершенно разное значение, и наиболее точно оценить это значение в контексте текста сегодня может только человек. Однако программно оценить значение какого-либо слова все-таки можно, хоть и не так точно. При этом алгоритм ранжирования должен опираться на так называемый профиль текста, который определяется его автором. Профиль представляет из себя ассоциативный массив, ключами которого являются части речи, а значениями соответственно ранг (или вес) каждой из них. Пример профиля я покажу в заключении, а пока попробуем перевести эти размышления на язык PHP, добавив еще один метод к классу morphyus:

Индексирование содержимого сайта

Как найти что то на сайте. Смотреть фото Как найти что то на сайте. Смотреть картинку Как найти что то на сайте. Картинка про Как найти что то на сайте. Фото Как найти что то на сайте

Как уже говорилось выше, индексирование заметно ускоряет выполнение поискового запроса, так как поисковому движку не нужно обрабатывать контент каждый раз заново — поиск выполняется по индексу. Но что же все-таки происходит при индексировании? Если по порядку, то:

В результате получается объект следующего формата:

Пишем инициализатор и первый метод ядра поискового движка:

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

Хранение индексированных данных

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

Нерешенным остался лишь вопрос формата индексированного содержимого, ведь make_index возвращает объект, и так просто в базу данных или файл его не запишешь. Можно использовать JSON и хранить его в полях типа LONGTEXT, можно BSON или CBOR, используя тип данных LONGBLOB. Два последних формата позволяют представлять данные в более компактном виде, чем первый.

Как говорится, «хозяин — барин», так-что решать, где и как все будет храниться, Вам.

Benchmark

Давайте проверим, что у нас получилось. Я взял текст своей любимой статьи «Темная материя интернета», а именно содержимое узла #content html_format и сохранил его в отдельный файл.

На моей машине с конфигурацией:
CPU: Intel Core i7-4510U @ 2.00GHz, 4M Cache
RAM: 2×4096 Mb
OS: Ubuntu 14.04.1 LTS, x64
PHP: 5.5.9-1ubuntu4.5

Индексирование заняло около секунды:

Думаю, вполне неплохой результат.

Реализация поиска

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

Все! Поисковый движок готов к использованию. Но есть одно но… На самом деле это не джин-волшебник, и просто закинув его на свой сайт Вы не получите ничего. Его нужно интегрировать, причем этот процесс во многом зависит от архитектуры Вашего сайта. Рассмотрим этот процесс на примере небольшого интернет магазина.

Реализация поиска на примере интернет-магазина

Допустим, информация о продаваемой продукции хранится в таблице production:

А описание в таблице description:

Поле production.keywords будет содержать индекс ключевых слов продукта, description.index будет содержать индексированное описание. И все это будут храниться в формате JSON.

Вот пример функции добавления нового продукта:

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

Данный сценарий принимает поисковый запрос в виде GET-параметра query и выполняет поиск. В результате выводятся найденные продукты магазина.

Заключение

В статье был описан один из вариантов реализации поиска для сайта. Это самая первая его версия, поэтому буду только рад узнать Ваши замечания, мнения и пожелания. Присоединяйтесь к моему проекту на Github: https://github.com/axilirator/firewind. В планах добавить туда еще кучу всяких возможностей, вроде кэширования поисковых запросов, подсказок при вводе поискового запроса и алгоритма побуквенного сравнения, который поможет бороться с опечатками.

Всем спасибо за внимание, ну и с днем информационной безопасности!

Источник

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

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