Бот для загрузки музыки с YouTube. Рабочая версия доступна по ссылке @YT_upl_Bot
- Поиск музыки на YouTube
- Скачивание найденных видео в формате .mp3
Если вам нужна простая версия бота, без использования базы данных Postgres и без работы в режиме webhook, то перейдите в эту ветку.
Установите бота с помощью команды в терминале:
wget https://raw.githubusercontent.com/rin-gil/youtube-music-download-bot/master/infrastructure/deploy.sh && chmod +x deploy.sh && ./deploy.sh
Установите базу данных Postgres в соответствии с инструкциями с официального сайта: https://www.postgresql.org/download/
Работа бота проверена на Postgres версии 15
Создайте базу данных, пользователя и настройки, выполнив команды в терминале:
sudo -u postgres psql
CREATE DATABASE db_name;
CREATE USER db_user WITH PASSWORD 'db_password';
\connect db_name;
CREATE SCHEMA db_name AUTHORIZATION db_user;
ALTER ROLE db_user SET client_encoding TO 'utf8';
ALTER ROLE db_user SET default_transaction_isolation TO 'read committed';
ALTER ROLE db_user SET timezone TO 'UTC';
\q
Замените db_name, db_user и db_password в этих командах на свои данные.
- Зарегистрируйте нового бота у @BotFather и скопируйте полученный токен
- Вставьте токен бота и учетные данные базы данных в файл .env
- Запуск бота через файл bot.py
python bot.py
Примеры конфигураций для запуска бота в режиме webhook или в качестве systemd сервиса можно найти в папке infrastructure
- Бот скачивает только музыку (аудиофайл .mp3)
- Бот не скачивает живые трансляции
- Плейлист не скачивается полностью, скачивается только один элемент
- Бот не скачивает клипы продолжительностью больше 15 минут
- Название для аудиофайла формируется из названия видео на YouTube. Поскольку в названии могут содержаться нежелательные символы, не поддерживаемые файловой системой, из названия убираются все символы, кроме букв, цифр, пробелов, знаков '_' и '-', длина названия обрезается до 100 символов
Проект YouTubeMusicDownloadBot распространяется по лицензии MIT