Этот сервис позволит пользователю произвести следующую последовательность действий (в формате JSON):
- Отправляем на endpoint
/tags/
POST-запрос, содержащий URL-адрес любой страницы в интернете. В ответе приходит идентификатор задания на выполнение. - По GET-запросу к endpoint
/tags/<идентификатор_задания>
получаем количество каждого типа HTML-тэгов (например,{"html": 1, "head": 1, "body": 1, "p": 10, "img": 2}
) на веб-странице или ошибку, если URL оказался чем-то отличным от HTMLстраницы, либо статус, что задание еще выполняется (формат произвольный).
Как запустить данный проект:
- На машине должен быть установленный redis(проект настроен на локальный redis, в случае отличий изменить в settings.py).
- Из коренной папки проекта активировать виртуальную среду:
source test/bin/activate.
Все дальнейшие действия выполнять в виртуальной среде. - Запустить Redis:
redis-server.
- Запустить воркер Celery из папки testwork:
celery worker -A testwork --concurrency=<макс.число задач>.
- Запустить сервер nginx:
python3 manage.py runserver.