Telegram bot for downloading YouTube videos.
shell
/video <download url>
/video <format> <download url>
/v <download url>
shell
/audio <download url>
/audio <format> <download url>
/a <download url>
shell
/search <query>
/s <query>
🚀 Simple usage with Docker. (To run without docker see setup)
docker run -d --name telegram_youtube_downloader --restart unless-stopped -e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> cccaaannn/telegram_youtube_downloader:latest
shell
docker run -d --name telegram_youtube_downloader --restart unless-stopped \
-e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> \
-e telegram_bot_options__default_command=video \
cccaaannn/telegram_youtube_downloader:latest
shell
docker run -d --name telegram_youtube_downloader --restart unless-stopped \
-e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> \
-e telegram_bot_options__authorization_options__mode=ALLOW_SELECTED \
-e telegram_bot_options__authorization_options__users__0__claims=all \
-e telegram_bot_options__authorization_options__users__0__id=<TELEGRAM_USER_ID_1> \
-e telegram_bot_options__authorization_options__users__1__claims=audio,help \
-e telegram_bot_options__authorization_options__users__1__id=<TELEGRAM_USER_ID_2> \
cccaaannn/telegram_youtube_downloader:latest
shell
docker run -d --name telegram_youtube_downloader --restart unless-stopped \
-e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> \
-v <YOUR_LOGS_PATH>/logs:/app/logs \
-v <YOUR_CONFIGS_PATH>/configs:/app/telegram_youtube_downloader/configs \
cccaaannn/telegram_youtube_downloader:latest
shell
docker run -d --name telegram_youtube_downloader --restart unless-stopped \
-e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> \
-e YOUTUBE_API_KEY=<YOUTUBE_API_KEY> \
cccaaannn/telegram_youtube_downloader:latest
shell
docker run -d --name telegram_youtube_downloader --restart unless-stopped \
-e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> \
-e youtube_downloader_options__audio_options__cookiefile=/app/cookies/cookies.txt \
-e youtube_downloader_options__video_options__cookiefile=/app/cookies/cookies.txt \
-v <YOUR_COOKIES_PATH>/cookies:/app/cookies \
cccaaannn/telegram_youtube_downloader:latest
shell
docker run -d --name telegram_youtube_downloader --restart unless-stopped \
-e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> \
-e youtube_downloader_options__audio_options__extractor_args='"youtubetab:skip=webpage;youtube:player_skip=webpage,configs;visitor_data=<VISITOR_DATA>;youtube:po_token=web.gvs+<PO_TOKEN>"' \
-e youtube_downloader_options__video_options__extractor_args='"youtubetab:skip=webpage;youtube:player_skip=webpage,configs;visitor_data=<VISITOR_DATA>;youtube:po_token=web.gvs+<PO_TOKEN>"' \
cccaaannn/telegram_youtube_downloader:latest
compose/.env.template
to compose/.env
, add your TELEGRAM_BOT_KEY
shell
docker compose -f compose/default.yaml up -d
shell
cd terraform/aws
terraform init
terraform apply
This project depends on yt-dlp and it is constantly updated, a daily Docker build pipeline added to keep the project up to date with external dependencies. It is not tested so might not be stable but if you are getting download errors on the latest version you can use daily until latest is fixed.
docker run -d --name telegram_youtube_downloader --restart unless-stopped -e TELEGRAM_BOT_KEY=<TELEGRAM_BOT_KEY> cccaaannn/telegram_youtube_downloader:daily