Сделал Telegram-бота на Python для скачивания с YouTube (1080p, плейлисты, прокси). Делюсь кодом

Привет всем! Написал для себя Telegram-бота на Python, который качает видео и плейлисты с YouTube.


Код собирал и отлаживал с помощью нейросети, чтобы ускорить разработку и закрыть нужные задачи. Бот получился рабочий, выложил исходники на GitHub, может кому-нибудь пригодится.


Что умеет бот:

* Качает видео в 1080p, 720p и других разрешениях или сохраняет чисто аудио в MP3.

* Качает плейлисты пачками (по 1, 3, 5 или 10 роликов за раз) с паузой между файлами, чтобы YouTube не выдавал ошибку 403.

* Обходит возрастные ограничения 18+ через куки из браузера Firefox (без возни с файлами cookies.txt).

* Кэширует скачанные файлы в базу SQLite: если видео уже качали, отдаёт его за 0.1 секунды.

* Поддерживает работу через прокси Happ (порт 10808) для стабильной загрузки в РФ.

* Поддерживает выгрузку файлов до 4 ГБ через Telegram Premium (для обычного бота лимит 2 ГБ).

* Задействует видеокарту (Nvidia, AMD или Intel) для перекодирования, чтобы не перегружать процессор.

* При запуске скрипта открывается консольное меню, где можно быстро настроить параметры под себя.


Проект полностью открытый, без рекламы и платных подписок. Код выложен как есть, забирайте и используйте.


Если найдёте баги или будут идеи по улучшению — пишите в комментариях.


Ссылка на GitHub:

29
12
4
3