.github/workflows | ||
assets | ||
.gitignore | ||
.gitmodules | ||
app.json | ||
broadcast.py | ||
config.py | ||
constant.py | ||
docker-compose.yml | ||
Dockerfile | ||
downloader.py | ||
LICENSE | ||
limit.py | ||
Procfile | ||
README.md | ||
requirements.txt | ||
supervisor.conf | ||
utils.py | ||
ytdl.py |
ytdlbot
YouTube Download Bot🚀
Download videos from YouTube and other platforms through a Telegram Bot
Usage
Send link directly to the bot. Any platform supported by youtube-dl will also work.
Limitation of my bot
Because I have limited resources, hundreds of Gigabytes doesn't sound like a sustainable solution.
In that case, I added one limitation: 5 GiB per 24 hours for each user. Might change in future
You can choose to become 'VIP' if you really need large traffic. And also, you could always deploy your own bot.
Features
- fast download and upload.
- ads free
- support progress bar
- audio conversion
- playlist support
- VIP support
How to deploy?
Choose your own preference.
Heroku
Use the button above! It should work like a magic.
Normal
- clone code
- install ffmpeg
- install Python 3.6+
- pip3 install -r requirements.txt
- set environment variables
TOKEN
,APP_ID
andAPP_HASH
, and more if you like. python3 ytdl.py
Simple one line docker
Some functions, such as VIP, ping will be disabled.
docker run -e APP_ID=111 -e APP_HASH=111 -e TOKEN=370FXI bennythink/ytdlbot
docker-compose
Compatible with amd64, arm64 and armv7l
1. get docker-compose.yml
Download this file to a directory, for example ~/ytdl/docker-compose.yml
2. create VIP database
mkdir ~/ytdl/data/
touch ~/ytdl/data/vip.sqlite
3. create env file
mkdir ~/ytdl/env/
vim ~/ytdl/env/ytdl.env
you can configure all the following environment variables:
-
WORKERS: default 500
-
APP_ID: REQUIRED
-
APP_HASH: REQUIRED
-
TOKEN: REQUIRED
-
REDIS: REQUIRED
-
OWNER: owner username
-
QUOTA: quota in bytes
-
EX: quota expire time
-
MULTIPLY: vip quota comparing to normal quota
-
USD2CNY: exchange rate
-
VIP: enable VIP or not, default: disable
-
AFD_LINK
-
COFFEE_LINK
-
COFFEE_TOKEN
-
AFD_TOKEN
-
AFD_USER_ID
-
AUTHORIZED_USER: users that could use this bot, user_id, separated with
,
-
REQUIRED_MEMBERSHIP: group or channel username, user must join this group to use the bot. Could be use with above
AUTHORIZED_USER
4. run
docker-compose up -d
Command
start - Let's start
about - Want to contribute?
ping - Bot running status
help - Anything troubles you?
ytdl - Download video in group
vip - Join VIP
terms - View Terms of Service
Test video
https://www.youtube.com/watch?v=BaW_jenozKc
Test Playlist
https://www.youtube.com/playlist?list=PL1Hdq7xjQCJxQnGc05gS4wzHWccvEJy0w
License
Apache License 2.0