Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 4

Код поиска для сайта

04.02.2016, 15:43. Показов 638. Ответов 7
Метки нет (Все метки)

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

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

Далее код поиска вы вставляете в шаблон своего сайта и он выдает поисковый результат, в виде списка заголовков страниц, используя поисковую базу.

Пример работы поиска можно посмотреть на сайте http://realsm.ru
Если возникают вопросы по работе кода, пишите на электронку адрес удалён
Вложения
Тип файла: rar Poisk.rar (3.6 Кб, 7 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.02.2016, 15:43
Ответы с готовыми решениями:

Ядро для умного поиска. Алгоритм. Создать поиск для сайта
Доброго времени суток. Хочу реализовать поиск по статьям на сайте. И надеюсь на ваше помощь. Есть таблица, где мы храним айди...

Фильтр поиска для сайта
Подскажите как организовать такой фильтр.. Может натолкнете на путь истинный?

скрипт поиска для сайта недвижимости
Есть скрипт поиска для сайта недвижимости В чем проблема? Проблема в том, что он выводит 1 объект по 1 ключевому слову Что...

7
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 4
04.02.2016, 19:24  [ТС]
Совсем забыл, что поисковый запрос может состоять из нескольких слов))
Вот выкладываю доработанный поиск, обрабатывающий несколько слов. Он так же убирает повторяющиеся ссылки и выводит сначала список ссылок на текст где совпали все слова из запроса, а потом выдает список даже при одном совпадении.
Вложения
Тип файла: rar Poisk.rar (4.1 Кб, 3 просмотров)
0
 Аватар для t1m0n
638 / 416 / 27
Регистрация: 03.11.2009
Сообщений: 1,855
11.02.2016, 23:46
разбирайтесь со sphinx или elasticsearch

я слегка знаком с php, код не очень
- внутри какие то куски html разметки
- работа с файлами всегда очень медленная

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

перепишете все в ООП стиле, но для мелких сайтов можно прикрутить поиск от гугла, для крупных сайтов sphinx или elasticsearch
1
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 4
12.02.2016, 09:31  [ТС]
спасибо за информацию, посмотрю эти поиски. Хочу заметить что вы не очень вникли в суть поиска, куски html это формат вывода надписей, все таки дизайн должен присутствовать я считаю)) К тому же сам код ищет не по файлам, там есть файл indexer, который индексирует эти файлы и создает на их основе базу, уже по этой базе и производится поиск.
Индексировать можно любые файлы, а не только текстовые, просто нужно будет изменить параметр расширения в файле индексации, и возможно изменить адрес к файлам, которые вы собираетесь индексировать.
На всякий случай уточню, а то создалось впечатление, что вы немного не поняли, индексация про водится один раз при создании базы для поиска или при изменении текста, а не каждый раз при поиске.
Так же хочу заметить, что на не большом сайте создание базы в mysql и постоянное обращение к ней наоборот вызовет более длительную работу поиска.
Ну и на последок, я добился того результата, который мне был нужен, а с вами я просто решил поделиться, вдруг это кому-то, когда-то поможет, я буду рад, я же не втюхиваю это за деньги)))ну а если ни кому не сгодится, то я сам с удовольствием буду пользоваться. Хотя немного критики в мой адрес не помешает, как говорится, в споре рождается истина))
0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
12.02.2016, 14:34
а потом перепишите всё в функциональном стиле и сравните.
0
 Аватар для t1m0n
638 / 416 / 27
Регистрация: 03.11.2009
Сообщений: 1,855
13.02.2016, 01:55
Цитата Сообщение от Heath Посмотреть сообщение
Хочу заметить что вы не очень вникли в суть поиска, куски html это формат вывода надписей, все таки дизайн должен присутствовать я считаю))
а потом у вас другой сайт и там другой дизайн - править в файлах поиска дизайн

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

Цитата Сообщение от Heath Посмотреть сообщение
что на не большом сайте создание базы в mysql и постоянное обращение к ней наоборот вызовет более длительную работу поиска.
обычно данные mysql хранятся в ОЗУ памяти сервера и запрос оттуда значительно быстрей загрузки файла с диска

а еще ваш поиск никак не учитывает опечатки и еще много чего

для пары файлов подойдет, но для маленького сайта можно встроить поиск от гугла и он будет в разы лучше такого легкого самописа...
0
0 / 0 / 0
Регистрация: 04.02.2016
Сообщений: 4
13.02.2016, 20:43  [ТС]
Ну дизайн надо будет исправить только в одном файле и потрачу я на это не больше 1 минуты, просто скопировав код)), да и используя любой поиск нужно править дизайн и адаптировать его под сайт. Мой код кстати сам удаляет все теги html при индексации, так что это не проблема))) Единственное с чем соглашусь, что не исправляются опечатки, ну если честно на большинстве сайтов и более крутые поиски не умеют это делать, но я понимаю что это не аргумент, просто для меня это не критично, если у меня появится желание, я и это сделаю)))
Но вообще давайте вернемся к тому что у меня были свои задачи и предпочтения, я их добился и оценивать их не прошу. Конструктивная критика самого кода допускается, для выявления каких либо явных ошибок, а сравнивать этот поиск с гуглом, по меньшей мере смешно. А вообще еще раз повторюсь моя цель была просто поделиться с тем что сделал я, на тот случай, если у кого то появятся те же цели и предпочтения как у меня и более того, готов им помочь в настройке этого добра. Ну а вообще мое лично мнение, мне не нравится как работают поиски от яндекса или гугла на сайтах, так же пропадает целостность сайта, он кажется набором абсолютно отличающихся страниц, а не чем то единым, да и вообще я терпеть не могу гугл( но это чисто субъективно, так что не воспринимайте близко к серцу)
0
 Аватар для LeniumSoft
1454 / 847 / 150
Регистрация: 06.06.2012
Сообщений: 2,370
16.02.2016, 15:32
Цитата Сообщение от Heath Посмотреть сообщение
началось все с того что пытался найти поиск для своего сайта, но все более менее подходящее оказывалось криво написанным, либо не давала ни какого результата.

Не по теме:

https://lucene.apache.org/core/

А это смотрели?

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.02.2016, 15:32
Помогаю со студенческими работами здесь

Движок поиска для самописного сайта
Есть самописный движок, необходимо организовать поиск по БД (mysql), по двум полям - русское название и название на английском языке. При...

Скрипт (система) поиска для сайта
Подскажите ХОРОШИЙ скрипт поиска по сайту. Сайт написан на php. Все страницы на php. Не предлагайте GOOGLE, пожалуйста! Добавлено...

Строка поиска от гугла и яндекса для сайта
Здравствуйте, как мне вставить поисковую строку гугла и яндекса к себе на сайт? Что бы поиск именно осуществлялся не по моему сайту, а по...

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

Как изменить дизайн гугл поиска для сайта?
Приветствую. Хочу встроить гугл поиск для своего сайта, но меня не устраивает внешний вид поисковика. Он стар и не очень красив. В общем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru