Сервис интернет календарей представляет из себя веб сервер, работающий по протоколам HTTP/HTTPS или WebDAV. Формат ответа сервера – файлы расширения ".ical", соответствующие спецификации iCalendar (RFC 5545). За информацией о расписании сервис использует публичное REST API «Галактика: Расписание учебных занятий», который используется в Финансовом Университете как единственный источник расписания.
python 3.8
- asyncio – библиотека для написания асинхронного (конкурентного) кода
- aiohttp – библиотека для асинхронного http сервера/клиента
- aiomisc – библиотека для удобного управления асинхронными сервисами
- aioredis – библиотека для асинхронного подключения к NoSQL базе данных Redis
- icalendar – библиотека для формирования файла календаря, придерживающегося спецификации iCalendar
- marshmallow – библиотека для сериализации/десериализации данных
- ujson – библиотека для работы с json форматом
Redis – NoSQL база данных
Docker – система контейнеризации
- docker-compose – инструмент для оркестрации Docker контейнеров
GitHub Actions – система автоматизации рабочих процессов
- Установить зависимости
pip install -r requirements.txt
- Запустить
python -m calendar_fu -D --file
Пример в файле docker-compose.yml