A Telegram Torrent (and youtube-dl) Leecher based on Pyrogram
-
✓ Google Drive link cloning using gclone. (WIP) ✓ Telegram File mirrorring to cloud along with its unzipping, unrar and untar ✓ Drive/Teamdrive support/All other cloud services rclone.org supports ✓ Extract compatible archive ✓ Custom file name ✓ Custom commands ✓ Get total size of your working cloud directory ✓ You can also upload files downloaded from /ytdl command to gdrive using `/ytdl gdrive` command. ✓ You can also deploy this on your VPS ✓ Option to select either video will be uploaded as document or streamable ✓ Added /renewme command to clear the downloads which are not deleted automatically. ✓ Added support for youtube playlist ✓ Renaming of Telegram files support added. ✓ Changing rclone destination config on fly (By using `/rclone` in private mode)- Adding mp3 files support while playlist downloading.
- Password support while Unarchiving the files.
- Selection of required files during leeching the big files using aria(/leech command)
-
You have to fork this repo at first
-
Find
app.jso. -
Tap on that.
-
Tap to edit and just add
nat last of name (Don't touch code). -
It should look like
app.json. -
Then tap:
Modified for use on Heroku, please do not heavily abuse!
Join this Telegram Group if you want support, I will try to help you as much as I can.
- Clone this repo:
git clone https://github.com/gautamajay52/TorrentLeech-Gdrive torrentleech-gdrive cd torrentleech-gdrive- Install requirements For Debian based distros
sudo snap install dockerInstall Docker by following the official docker docs
cp sample_config.env config.envAfter this step you will see a new file named
config.envin root directory.Fill those compulsory variables.
If you need more explanation about any variable then read app.jso
- Set rclone locally by following the official repo: https://rclone.org/docs/
- Get your
rclone.conffile will look something like this:
[NAME] type = scope = token = client_id = client_secret =-
Copy
rclone.conffile in the root directory (WhereDockerfileexists). -
Your config can contains multiple drive entries. (Default: First one and change using
/rclonecommand)
- Start Docker Daemon (skip if already running):
sudo dockerd- Build Docker Image:
sudo docker build . -t torrentleech-gdrive- Run the image:
sudo docker run torrentleech-gdriveFollow this Video Tutorial
Simply clone the repository and run the main file:
git clone https://github.com/gautamajay52/TorrentLeech-Gdrive cd TorrentLeech-Gdrive python3 -m venv venv . ./venv/bin/activate pip install -r requirements.txt # Create config.py appropriately python3 -m tgtlg-
TG_BOT_TOKEN: Create a bot using @BotFather, and get the Telegram API token. -
APP_ID -
API_HASH: Get these two values from my.telegram.org/apps.- N.B.: if Telegram is blocked by your ISP, try our Telegram bot to get the IDs.
-
AUTH_CHANNEL: Create a Super Group in Telegram, add@GoogleIMGBotto the group, and send /id in the chat, to get this value. -
OWNER_ID: ID of the bot owner, He/she can be abled to access bot in bot only mode too(private mode).
-
DOWNLOAD_LOCATION -
MAX_FILE_SIZE -
TG_MAX_FILE_SIZE -
FREE_USER_MAX_FILE_SIZE -
MAX_TG_SPLIT_FILE_SIZE -
CHUNK_SIZE -
MAX_MESSAGE_LENGTH -
PROCESS_MAX_TIMEOUT -
ARIA_TWO_STARTED_PORT -
EDIT_SLEEP_TIME_OUT -
MAX_TIME_TO_WAIT_FOR_TORRENTS_TO_START -
FINISHED_PROGRESS_STR -
UN_FINISHED_PROGRESS_STR -
TG_OFFENSIVE_API -
CUSTOM_FILE_NAME -
LEECH_COMMAND -
YTDL_COMMAND -
GYTDL_COMMAND -
GLEECH_COMMAND -
TELEGRAM_LEECH_COMMAND -
TELEGRAM_LEECH_UNZIP_COMMAND -
PYTDL_COMMAND -
CLONE_COMMAND_G -
UPLOAD_COMMAND -
RENEWME_COMMAND -
SAVE_THUMBNAIL -
CLEAR_THUMBNAIL -
GET_SIZE_G -
UPLOAD_AS_DOC: Takes two option True or False. If True file will be uploaded as document. This is for people who wants video files as document instead of streamable. -
INDEX_LINK: (Without/at last of the link, otherwise u will get error) During creating index, plz fillDefault Root IDwith the id of yourDESTINATION_FOLDERafter creating. Otherwise index will not work properly. -
DESTINATION_FOLDER: Name of your folder in ur respective drive where you want to upload the files using the bot.
-
/rclone: This will change your drive config on fly. (First one will be default) -
/gclone: This command is used to clone gdrive files or folder using gclone.Syntax:- `[ID of the file or folder][one space][name of your folder only(If the id is of file, don't put anything)]` and then reply /gclone to it. -
/log: This will send you a txt file of the logs. -
/ytdl: This command should be used as reply to a supported link -
/pytdl: This command will download videos from youtube playlist link and will upload to telegram. -
/gytdl: This will download and upload to your cloud. -
/gpytdl: This download youtube playlist and upload to your cloud. -
/leech: This command should be used as reply to a magnetic link, a torrent link, or a direct link. [this command will SPAM the chat and send the downloads a seperate files, if there is more than one file, in the specified torrent] -
/leechzip: This command should be used as reply to a magnetic link, a torrent link, or a direct link. [This command will create a .tar.gz file of the output directory, and send the files in the chat, splited into PARTS of 1024MiB each, due to Telegram limitations] -
/gleech: This command should be used as reply to a magnetic link, a torrent link, or a direct link. And this will download the files from the given link or torrent and will upload to the cloud using rclone. -
/gleechzipThis command will compress the folder/file and will upload to your cloud. -
/leechunzip: This will unarchive file and dupload to telegram. -
/gleechunzip: This will unarchive file and upload to cloud. -
/tleech: This will mirror the telegram files to ur respective cloud cloud. -
/tleechunzip: This will unarchive telegram file and upload to cloud. -
/getsize: This will give you total size of your destination folder in cloud. -
/renewme: This will clear the remains of downloads which are not getting deleted after upload of the file or after /cancel command. -
/rename: To rename the telegram files.
You can add a custom name as it's prefix of the original file name. e.g: if file is
gk.txtuploaded will be what you added inCUSTOM_FILE_NAME+gk.txtIt is like you can add custom name as prefix of the original file name. Like if your file name isgk.txtuploaded will be what u add inCUSTOM_FILE_NAME+gk.txtAdded ability to have custom name like...
You have to pass link as
www.download.me/gk.txt | new.txtthe file will be uploaded as
new.txt.- send any one of the available command, as a reply to a valid link/magnet/torrent.
- GautamKumar (me)
- SpEcHiDe for his wonderful code
- cihanvol for direct_link_generator
- AmirulAndalib for custom start.sh
- Rclone Team for theirs awesome tool
- Dan Tès for his Pyrogram Library
- Robots for their @UploadBot
- @AjeeshNair for his torrent.ajee.sh
- @gotstc, @aryanvikash, @HasibulKabir for their TORRENT groups