Представляем juhu — поисковую систему с открытым исходным кодом


Обзор моего проекта

Juhu — это поисковая система с открытым исходным кодом, созданная с использованием Nodejs и базы данных Redis. Как вы уже догадались, сценарий использования веб-сайта уже известен. Почему бы не попробовать самостоятельно: «Поиск Элона Маска».

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

Категория представления:

MEAN/MERN Mavericks Да, я использовал MERN, также заменил M на R, то есть я использовал redis в качестве основной базы данных.

Видео объяснение моего проекта

Используемый язык:

Я использовал Javascript в качестве основного языка и Nodejs в качестве среды выполнения. Я использовал различные библиотеки/пакеты для создания этого приложения. Некоторые из них:

  • Puppetter -> Я использовал этот инструмент автоматизации для сканирования веб-страниц.

  • Redis OM -> Используется для взаимодействия с сервисами redis (поиск Redis/база данных JSON)

  • Express -> Для создания сервера

  • React -> Для создания клиентской части (фронтенда)

  • Mongoose -> Для использования вторичной базы данных (MongoDB)

Ссылка на код

Репозиторий приложения MERN:

aashishpanthi / search-engine

Это поисковая система с открытым исходным кодом, построенная с использованием redis и puppeteer

Juhu — поисковая система

Juhu — это поисковая система с открытым исходным кодом, которая не отслеживает пользователей и полностью настраивается.

Обзорное видео

Вот короткое видео, которое объясняет проект и то, как он использует Redis:

Как это работает

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

Как хранятся данные:

Прежде всего, наш сервер должен быть связан с базой данных redis. Это длинный код, но он работает :).

import { Client }

Вход в полноэкранный режим Выход из полноэкранного режима
Просмотр на GitHub

Репозиторий бота:

aashishpanthi / web-crawler

Web-crawler

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

Посмотреть на GitHub

Архитектура:

Ссылки:

  • Web crawler
  • Приложение MERN
  • Сайт

Некоторые скриншоты сайта

  • Главная страница

  • Страница текстового результата (результата поиска)

  • Страница результатов изображений (результатов поиска)

Коллабораторы

@roshanacharya и я @aashishpanthi


  • Ознакомьтесь с Redis OM, клиентскими библиотеками для работы с Redis как многомодельной базой данных.
  • Используйте RedisInsight для визуализации данных в Redis.
  • Подпишитесь на бесплатную базу данных Redis.

Оцените статью
devanswers.ru
Добавить комментарий