Skip to content

REST API на Django Rest Framework с парсером маркетплейса.

Notifications You must be signed in to change notification settings

Rusih100/o-parser-dev-test

Repository files navigation

rusih100-test-o-parser

REST API на Django Rest Framework с парсером маркетплейса.

Описание

Проект состоит из REST API на Django Rest Framework. Парсер реализован библиотекой Selenium с помощью отложенных задач Celery. Уведомление о загруженных товарах и ошибках во время парсинга отправляются пользователю через telegram-бота. В проекте используются такие базы данных, как MySQL и Redis. Документирование API осуществляется с помощью библиотеки Django drf-yasg. Панель администратора кастомизирована с использованием AdminLTE.

Стек технологий

  • Python
  • Django Rest Framework
  • MySQL
  • Redis
  • Selenium
  • Celery
  • Docker-compose
  • git

API endpoints

POST api/v1/products/ - Запуск задачи на парсинг N товаров. Количество товаров должно принимается в теле запроса в параметре products_count, по умолчанию 10, максимум 50.

GET api/v1/products/ - Получение списка товаров.

GET api/v1/products/{product_id}/ - Получение товара по айди.

Документация и панель администратора

swagger/ - endpoint к докуметации swagger.
redoc/ - endpoint к докуметации redoc.

admin/ - endpoint к панели администратора.

Запуск проекта

Проект запускается с помощью Docker-compose

  1. Загрузите репозиторий и перейдите в него:
    git clone https://github.com/Rusih100/rusih100-test-o-parser.git

  2. Соберите контейнеры:
    docker-compose build

  3. Запуск контейнеров:
    docker-compose up

Контейнеры также можно запустить в фоне:
docker-compose up -d

Примечание: Для работы уведомлений необходимо предварительно написать боту /start.

Скринкаст админки

Скринкаст Скринкаст

TO DO

  • Написать тесты
  • Написать документацию

About

REST API на Django Rest Framework с парсером маркетплейса.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published