Описание текущей работы бота

Бот работает по следующему принципу: пользователь отправляет ссылку на видео YouTube, бот запускает задачу (с использованием yt-dlp) для получения информации о видео. На основе полученных данных формируются кнопки с доступными качествами. После нажатия кнопки запускается скачивание: если выбранный видеоформат содержит звук, он скачивается напрямую, если без звука - докачивается лучший аудиопоток и производится склейка. Готовый файл временно сохраняется на сервере, затем отправляется пользователю. Telegram возвращает file_id, который сохраняется в кэше Redis. При повторном запросе того же видео в том же качестве бот использует file_id и не скачивает файл заново. Прямо сейчас в указанном механизме происходит постоянная ошибка, файлы из YouTube не выдаются.

Что нужно сделать

Проинспектировать указанный код (предоставляется отдельно) и исправить все причины ошибок, в результате которых бот:

  • не отправляет видео пользователю;
  • выбрасывает исключения при обработке ссылок или нажатии кнопок выбора качества;
  • некорректно обрабатывает формат video+audio (склейка);
  • не собирает file_id или некорректно работает кэш.

Технологический стек

  • Python 3.13+
  • aiogram
  • yt-dlp
  • Redis (через aioredis или redis-py)
  • возможно использование Celery и Docker

Формат результата

Предоставить исправленный бот (скрипты) с чётко задокументированными внесёнными правками. В плане кода - ожидается, что кэширование работает стабильно и основная функция (скачка видео из YouTube по ссылке) выполняется без сбоев.

SMM-специалист для развития соцсетей бренда одежды

Требуется специалист для ведения и развития социальных сетей fashion-бренда с использованием AI-инструментов. Основные задачи: составление контент-плана, генерация и публикация контента, обратная связь по работе системы.