Новая поисковая система позволяет с помощью плагина для Google Chrome добавить ваши страницы в индексы поисковой системы.
После установки плагина вам будет доступна кнопка «Сохранить страницу». Каждое добавление страницы в поисковую систему ассоциируется с вашим IP. Таким образом осуществлять поиск по вашим страница можно только с вашего IP. Поисковая система доступна по адресам
svlaboratory.org/application/search и svlaboratory.com
Алгоритм, реализация, стек технологий.
Индексы поисковой системы хранятся в базе данных MySQL. В качестве индексов используются текст внутри тегов html страниц полученных после их загрузки и динамического отображения в браузере пользователя. Также используется текст полученный после преобразования слов в базовую форму библиотекой морфологического анализатора Az.js.
По такому же принципу сохраняются индексы ссылок на медиа ресурсы HTML страницы: гиперссылки, изображения, видео.
Все индексы соответствуют отдельным таблицам базы данных MySQL, отдельные строки которых соответствуют описанию индексируемых страниц.
Динамическая загрузка и парсинг страниц осуществляется Google Chrome плагином с помощью библиотеки JQuery.
После того как плагин подключен к браузеру и пользователь на нужной странице нажал кнопку «Сохранить страницу» осуществляется отправка данных парсинга на веб сервер поисковой системы написанной на PHP с использованием каркаса приложения запросов Zend Framework.
Для поиска по вашим страницам ваши данные ассоциируются с вашим IP адресом и поисковый запрос отправляется со страницы web приложения svlaboratory.org/application/search и svlaboratory.com на экшен web сервера Apache с помощью технологии Ajax.
В качестве алгоритма поиска страниц используется поисковые запросы к базе данных MySQL.
Для поиска предложений — предложения разбиваются на слова, слова приводятся в базовую форму морфологическим анализатором. Осуществляются поиски отдельных слов.
На первом месте в результатах поиска выводится та страница, в которой найдено больше всего слов, пар слов, и исходных предложений.
Конкретная реализация поисковой системы в вашем случае будет зависеть только от вашего умения программировать.
Всех приглашаю пользоваться моей поисковой системой.
С наилучшими пожеланиями,
SVLAB
Комментарии (82)
puksa
29.07.2019 18:35+11TL;DR статьи: штука есть такая, я ее написал, вот. Как работает и как написал — не скажу.
В качестве алгоритма поиска страниц используется поисковые запросы к базе данных MySQL.
парсинг страниц осуществляется… с помощью библиотеки JQuery.
Исходники не открываю
Да, в общем-то, и не надо тогда.vladshow Автор
30.07.2019 23:12-2В этой статье я хотел представить публики не столько алгоритм сколько продукт. Поскольку кармы мало то необходимо писать в другие хабы, а не защищенный хаб «Я пиарюсь». Все же алгоритм достаточно понятен для реализации программистом. Все тонкости связанные с реализацией конкретных вещей таких как запросы SQL, создание таблиц SQL, экшены PHP, и отправка AJAX запросов JS-ом можно почитать в учебниках и найти на stackoverflow.com
Mikluho
30.07.2019 23:50+1Вот если бы вы в статье предлагали идею продукта, описали бы use case, технологическое решение, алгоритмы, результаты тестирования, посчитали бы, какую нагрузку выдержит ваш вариант реализации и т.д. — могла бы выйти годная статья, несмотря на спорную идею.
Вы же пиарите «поисковую систему», которая таковой не является, заявляете темой статьи алгоритм, про который ничего (почти) не пишете…
lair
31.07.2019 00:32А в чем ценность вашего "продукта"?
vladshow Автор
31.07.2019 01:34-2в назначении
lair
31.07.2019 01:50А конкретнее?
vladshow Автор
31.07.2019 08:23в статье описано назначение поконкретней
lair
31.07.2019 11:05В статье описано "назначение поконкретнее", но не описано, чем это ценно. А это именно то, что я спрашивал.
vladshow Автор
31.07.2019 11:15-2Представляет ценность в жизни использования web и интернет
lair
31.07.2019 11:16В чем конкретно заключается эта ценность?
vladshow Автор
31.07.2019 11:43В простоте для этого случая. Придумайте проще и лучше, пока от комментариев проще и понятнее для обычного пользователя никто ничего не подсказал.
lair
31.07.2019 11:46В простоте для этого случая.
Для какого случая? Какую задачу вы решаете?
vladshow Автор
31.07.2019 11:59-2Пофиксите свой контекст диалога, зачем мне повторять свою задачу, читайте статью, мы с вами разговаривали про задачу и вы уже забыли контекст. Смените свою экспертную систему.
lair
31.07.2019 12:00Пофиксите свой контекст диалога, зачем мне повторять свою задачу
Не "повторять". Вы ее до сих пор ни разу не озвучили (о чем я вам неоднократно в ходе этого диалога и сказал).
vladshow Автор
31.07.2019 12:39-1Как было доказано, вы лжете и лицемерете.
lair
31.07.2019 13:07Как было доказано
Не было. Ваше утверждение "вы врете" не является доказательством чего бы то ни было.
vladshow Автор
31.07.2019 13:10-2Почитайте комментарии, там все доказано. Вы пользуетесь аналогичным сервисом и платите за него деньги, а скорее всего опять просто лжете.
lair
31.07.2019 13:14Почитайте комментарии, там все доказано.
Нет.
Вы пользуетесь аналогичным сервисом и платите за него деньги
Я пользуюсь сервисом, который делает то, что мне нужно. То, что он — по вашему утверждению, не по моему — аналогичен вашему, никак не делает меня лжецом.
vladshow Автор
31.07.2019 13:15-1Почитайте комментарии, там все доказано. Вы пользуетесь аналогичным сервисом и платите за него деньги, а скорее всего опять просто лжете, ничем вы не пользуетесь.
lair
31.07.2019 13:19… от того, что вы повторите свой комментарий дважды, он не станет ближе к истине.
скорее всего опять просто лжете, ничем вы не пользуетесь.
https://getpocket.com/@c79d0p54Tf1fYgH367A00GsA20g9TY67359R87y5fRWcH7dfi12f8J3az36IJl12
Жду извинений.
vladshow Автор
31.07.2019 13:28-2Хорошо тут может и не лжете. Но в выше сказанном вы лгали. Вы знаете про аналогичный сервис, а говорили что не имеете понятия о поставленной задаче.
lair
31.07.2019 13:30Но в выше сказанном вы лгали.
Докажите.
Вы знаете про аналогичный сервис, а говорили что не имеете понятия о поставленной задаче.
Я, вообще, много про какие сервисы знаю. И что?..
roryorangepants
31.07.2019 14:16+2Поскольку кармы мало то необходимо писать в другие хабы, а не защищенный хаб «Я пиарюсь».
Вывод неверный. Поскольку кармы мало, то необходимо писать статьи по сути, а не рекламные.
Mikluho
29.07.2019 19:07+4Как, опять?
В прошлый раз уже вам же сказали, что в таком виде оно не надо примерно никому.
Тем более, что утверждение
Конкретная реализация поисковой системы в вашем случае будет зависеть только от вашего умения программировать.
невозможно без доступа к исходникам.vladshow Автор
30.07.2019 23:32-2Миклухо, вы всегда добавляетесь к диалогу и приводите аргументы первого комментария и зарабатываете так рейтинг. Другие ведутся и ставят вам плюсики. А что нибудь свое надо бы еще придумывать в вопросах.
Mikluho
30.07.2019 23:38А я вот не понимаю тех, кто не делает очевидных выводов и ждёт нового результат делая то же, что уже было отвергнуто. Но ещё пол беды, если автор новую статью клепает, хоть и с теми же недостатками, что и предыдущие. Вы же убрали заминосованную статью в черновик и опубликовали снова. Неужели ожидали, что в этот раз она плюсиков отхватит?
В прошлый раз я задал вам вопросы, но вразумительных ответов не поступило.
И да, рейтинг я так не зарабатываю :)vladshow Автор
31.07.2019 12:17Мне нужно прорекламировать свой сервис, хабр идеальное для этого место. Хабр хорошо индексируется и имеет умную аудиторию. На плюсики мне все равно. Не догадались.
Mikluho
31.07.2019 12:44Мне нужно прорекламировать свой сервис, хабр идеальное для этого место.
Таким образом вы честно говорите, что нарушаете правила хабра?
Реклама допустима только в корпоративных блогах и «я пиарюсь».
Хабр хорошо индексируется и имеет умную аудиторию.
и вот эта умная аудитория выражает своё мнение через минусы…vladshow Автор
31.07.2019 12:49-1это 10 минусов человек из 1k.
Не нарушаю, так как предоставил описание алгоритма, и в комментариях будет содержаться много полезной информации.Mikluho
31.07.2019 14:00Нет, это -22 из 25. Остальные мимо прошли или закрыли статью, не увидев никакой пользы.
Нарушаете, т.к. то, что вы написали, не тянет на алгоритм.
И не будет в комментариях много полезной информации…
tempick
29.07.2019 19:50+21) А если у меня IP динамический?
2) Какой смысл писать, какие технологии используются, если не показан код, не показано сравнение по сложности написания, производительности и т.д. используемых технологий с аналогичными?
«Я написал вот это приложение на вот этом-то, этом-то с использованием вот такой-то библиотеки..» — И что? В чём ценность этой информации?vladshow Автор
30.07.2019 23:18-21) Сейчас если динамический, можно переключиться на статический, но в будущем возможно я сделаю авторизацию на сервис.
2) Ценность в том что другие программисты могут попробывать реализовать такую систему с выбором именно таких технологий.Mikluho
30.07.2019 23:411 — и как в предлагаете переключаться на статический? Иметь один IP и для домашнего компа, и для рабочего, и для мобилы?
2 — другим программистам, как видно из комментариев, вообще не приходи идея делать такую систему. Не говоря уже про выбор того, на чём это делать…vladshow Автор
31.07.2019 01:39-11 — купить у провайдера статический IP
Mikluho
31.07.2019 07:02и как это связано с моим вопросом?
vladshow Автор
31.07.2019 08:37-1в будущем возможно я сделаю авторизацию, а пока можете купить статический IP для домашнего пк и смартфона.
vladshow Автор
31.07.2019 08:56-1для рабочего компа тоже можете сделать статический IP т.к. там как правило другие закладки
Mikluho
31.07.2019 10:04Два ответа, и оба мимо.
Первое, как заиметь один и тот же IP для всех указанных случаев?
Второе, почему вы считаете, что мне не понадобится со смартфона найти то, что я в индекс добавил с домашнего компа?
И третье, за какую ценность вашего продукта вы предлагаете мне платить деньги провайдерам?
Ну и вишенкой на торт, четвёртый вопрос — если уж это мои страницы, то как уберечься от того, что кто-то другой, получивший тот же IP, в поиске найдёт мои страницы? Например, если к вам запрос через прокси попадает?
lair
31.07.2019 00:33Ценность в том что другие программисты могут попробывать реализовать такую систему с выбором именно таких технологий.
А что им мешало попробовать до вашей статьи?
vladshow Автор
31.07.2019 08:49-1теперь зная алгоритм и выбор технологий попробуют реализовать многие
Mikluho
31.07.2019 10:15Да нет у вас никакого интересного алгоритма, и выбор технологий весьма спорный.
Если бы мне хотелось хранить странички для персонального поиска — я бы сделал решения на полнотекстовом поиске, да с доступом по ssl/ssh и с авторизацией этим же каналом. Да прикрутил бы сохранения страниц целиком в кэш.
Если бы для себя — то и захостить можно дома с пробросом наружу через динамический dns.
Хотел бы опубликовать — выложил бы в публичный репозиторий, вдруг бы кому и сгодилось.
vladshow Автор
31.07.2019 10:26Так сделайте посмотрим что у вас получится.
Я бы да ка бы…Mikluho
31.07.2019 10:55А зачем это делать? Мне это не интересно. Судя по комментариям — мало кому интересен такой продукт.
Из того набора технологий, что я описал — я всё уже делал, тоже нет интереса.
Я тут отвечал на «теперь зная алгоритм и выбор технологий попробуют реализовать многие».vladshow Автор
31.07.2019 11:38-2«Мало кому интересен» тоже нужно поддерживать и им это интересно, мне приятно, что хоть кто то заинтересовался и в будущем возможно создаст свой Яндекс или Google.
Для вас это мало для меня это многие.
Если вы сделали на базе своих технологий, то создайте свою статью и опишите ваш отличающийся алгоритм. Можете даже как вы хотели от меня, сами поделиться своими исходниками.Mikluho
31.07.2019 12:36Да не будет на этой идее, и уж тем более технологиях, ни яндекса ни гугла. Ибо они решают понятные и полезные задачи, а какую большую пользу несёт ваш продукт — не понятно.
vladshow Автор
31.07.2019 12:55-1Почитайте комментарии, там все доказано что вы лжете.
Будет и Яндекс и Гугл, главно начните (это я обращаюсь к тем кто захочет сделать подобные поисковые системы). Они тоже начинали с малого.lair
31.07.2019 13:08Почитайте комментарии, там все доказано что вы лжете.
Вы так дойдете до того, что все ваши оппоненты лгут. Это, конечно, удобная позиция, но непродуктивная — хорошо видно, что у вас нет аргументов в свою пользу.
lair
31.07.2019 11:07Алгоритм у вас не описан. А ваш выбор технологий мне, например, бесполезен — если я буду решать такую задачу, у меня стек технологий с вашим не совпадет вообще (и, кстати, будет работать лучше).
И это не отвечает на вопрос, что же мешало людям сделать это все до вашей статьи.
vladshow Автор
31.07.2019 11:48-2Теперь я описал простой алгоритм без описания реализации. Многие заинтересовались уже и захотят сделать я уверен.
Если у вас есть свои представления о алгоритме, представления о реализации, то думаю хабру будет интересно почитать ваш алгоритм, скачать вашу реализацию, если же конешно вы захотите ею поделится. Так что пишите свою статью.lair
31.07.2019 11:52+1Теперь я описал простой алгоритм без описания реализации.
Это вы вот это имеете в виду?
В качестве алгоритма поиска страниц используется поисковые запросы к базе данных MySQL. Для поиска предложений — предложения разбиваются на слова, слова приводятся в базовую форму морфологическим анализатором. Осуществляются поиски отдельных слов.
Это не алгоритм, это, простите за прямоту, тривиальное решение, не имеющее никакой ценности.
Многие заинтересовались уже и захотят сделать я уверен.
Понятно, что "вы уверены", но вот только никаких оснований для того, чтобы утверждать, что "многие заинтересовались", у вас нет.
Если у вас есть свои представления о алгоритме, представления о реализации
Только после того, как станет понятна решаемая задача.
думаю хабру будет интересно почитать ваш алгоритм
Вы и про свою статью думали наверняка, что "будет интересно". Результат можно видеть в комментариях.
vladshow Автор
31.07.2019 12:05-21) Это вы вот это имеете в виду?
Нет алгоритм это не только там где написано слово алгоритм.
2) Почему же, многие это больше 1k просмотров и есть закладки, а комментарии сейчас пишут мне недовольные только 2 человека.
3) Странно что вы до сих пор не поняли задачу. Смените экспертную систему.
4) Всем интересно. Ваше негативное отношение это тоже интерес.
Вы постоянно хвастаете своей реализацией, думаю хотите ею поделиться.lair
31.07.2019 12:07Нет алгоритм это не только там где написано слово алгоритм.
Можете распространить на всю статью.
Почему же, многие это больше 1k просмотров
Просмотр не означает интереса к задаче.
Странно что вы до сих пор не поняли задачу.
Ничего странного, учитывая, как вы ее описываете.
Всем интересно.
Вам не удастся формально доказать это утверждение.
Вы постоянно хвастаете своей реализацией
Я? Нет, у меня нет никакой реализации для неизвестной задачи.
vladshow Автор
31.07.2019 12:34-2Говорите про «Просмотр не означает интереса к задаче», про «неизвестную задачу», а ниже предлагаете пользоваться Pocket.
Вы нагло врете. С врунами никто никогда не хочет связываться. Не пишите мне больше комментарии.lair
31.07.2019 13:07Говорите про «Просмотр не означает интереса к задаче», про «неизвестную задачу», а ниже предлагаете пользоваться Pocket.
Не предлагаю, а спрашиваю, чем ваше решение от него отличается.
Вы нагло врете.
Докажите.
roscomtheend
30.07.2019 10:35Что значит "ваши страницы"? Любая, открытая в браузере? Конечно, кейс возможный, но кажущийся не очень частым, проще в таком случае сохранить в локальный каталог и искать тем же Far или поставить какой софт для локального поиска, для больших объёмов (вариант не-поиграться) в памяти всплавают слова CROS/CRONOS.
Расширений должно быть минимум, чтобы не было как в прошлый раз (куча расширений собирала "дополнительную" информацию).
Если же просто отправлять туда все страницы, чтобы не вспоминать что-то по любой теме, то для такого уже придуман Гугл.vladshow Автор
30.07.2019 23:26«Придуман Гугл» — для поиска своих страничек это все равно плохой вариант, т.к. гуглу мешает выдать хороший результат чужие страницы. Гугл имеет огромную базу индексированных страниц поэтому свои теряются в этом массиве.
«Ваши страницы» — да это любая открытая в браузере. FAR не умеет использовать поиск с морфингом (приведение слов в базовую форму). К тому же это не удобно разделять сервис на несколько инструментов (браузер, FAR, CROS/CRONOS).Mikluho
30.07.2019 23:45А что такое вообще эти «свои странички»?
То, что я делаю — скорее будет искаться другими способами — по локальной БД, по репозиторию и т.д.
Если это то, что я открыл в браузере — так не факт, что вспомню, какие именно там были слова, а даже если и вспомню, не факт, что не окажется полезнее что-то более свежее, найденное гуглом.vladshow Автор
31.07.2019 08:31В будущем я добавлю поиск по синонимам.
«Окажется полезнее» — у системы своя полезность — это поиск именно по своим страницам.lair
31.07.2019 11:09Что такое "свои страницы", и чем это вообще лучше, чем Pocket?
vladshow Автор
31.07.2019 11:53Pocket по всей видимости не предоставляет полнотекстовый поиск по своим закладкам и страницам, не индексирует их.
lair
31.07.2019 11:55У меня все прекрасно ищется.
vladshow Автор
31.07.2019 12:12-1В вашем ключе мне стоило написать вам: «У меня это у кого? Что ищется?».
В описании к сервису не указано что он предоставляет полнотекстовый поиск, написано только сохранение.lair
31.07.2019 12:13vladshow Автор
31.07.2019 12:23-1Premium — а у меня все бесплатно. Вы сами то купили премиум? Я и знать такой сервис не знал, не удивительно и доказано теперь что вы врете в комментарии выше, раз знаете про задачу и интерес к данным видам сервиса.
lair
31.07.2019 12:26+1Premium — а у меня все бесплатно.
Это, скажем так, неправда. Бесплатно, если пользоваться вашим сервисом, который не предоставляет никаких гарантий (включая гарантию конфиденциальности данных), и совершенно не бесплатно, если делать самому.
Вы сами то купили премиум?
Да.
доказано теперь что вы врете в комментарии выше
Нет, не доказано. Прочитайте внимательно, что я пишу выше:
Что такое "свои страницы", и чем это вообще лучше, чем Pocket?
vladshow Автор
31.07.2019 12:44-1Гарантий действительно не предоставляю. Все странички я буду сохранять у себя на сервере и могу ими пользоваться как захочу, думаю такие же правила у Pocket.
Выше все доказано про вашу ложь.
Нагло пользоваться подобным сервисом и не понимать смысл и ценность задачи.
У меня свой алгоритм так что я не знал об этом сервисе.
Но на этом тоже спасибо за ссылку, просто стоило сразу ею поделиться.lair
31.07.2019 13:13думаю такие же правила у Pocket.
Нет.
Выше все доказано про вашу ложь.
Нет.
Нагло пользоваться подобным сервисом и не понимать смысл и ценность задачи.
Я понимаю смысл Pocket, и именно поэтому им пользуюсь. Я не понимаю смысла вашего сервиса: если он эквивалентен Pocket, то зачем нам второй Pocket, если он отличается, то не понятно, чем.
vladshow Автор
31.07.2019 13:20-2Нет. Нет. А сказать уже нечего. Простое отрицание.
Я даже не знал про ваш аналогичный сервис и вы уже говорите что он не аналогичен, а зачем вы тогда его привели упоминание. Так всегда бывает, вы стали противоречить сами себе, а все из за того что постоянно лжете.lair
31.07.2019 13:23А сказать уже нечего. Простое отрицание.
По ссылкам ходить не пробовали, я так понимаю.
вы уже говорите что он не аналогичен
Я не говорю, что он аналогичен. Я спрашиваю, аналогичен ли он.
roscomtheend
02.08.2019 16:31Почему же, многие это больше 1k просмотров и есть закладки
Они точно от интереса закладки, а не для "поржать"? Тем более обновление — просмотр, почитать как вы извиваетесь со своим "вывсёврёти". Впрочем, это достаточно уныло, без огонька.
для поиска своих страничек это все равно плохой вариант
Что есть "своя страничка"? Если я ищу информацию по теме — я смотрю страницу, если надо отложить — осталвяю вкладку или делаю закладку, иначе смотрю её полезность и использую информацию оттуда (или откидываю), нужное запоминаю и(или) сразу применяю. Если я пишу статю, то я тоже делаю закладку, чтобы внимательно перечитать, закладку в нужной папке, не кидаю в кучу в индекс статьи про гигантских панд, C++, космос и викинг паэр метал — это лишено смысла, придётся искать по ключевым словам и фразам. Если это что-то из текущей области, с которой приходится работать, то есть справочники и гугл для редких вопросов (которые посмотрел-запомнил-использовал, а не тащил в кучу). Напоминает коллекционирование. Кейса "свалить всё в кучу, потом там искать" не вижу. И, похоже, не только я.
androidovshchik
Исходники?
vladshow Автор
Исходники не открываю