# TorrentLeech-Gdrive **Repository Path**: lnroboczy/TorrentLeech-Gdrive ## Basic Information - **Project Name**: TorrentLeech-Gdrive - **Description**: It is a fork of 'PublicLeech' with support of uploading files and foder to gdrive or any drive rclone.org support. Like onedrive, mega and so on. Now supports Unzip, unrar, untar too. Now you all can also mirror the telegram files to your respective cloud too. - **Primary Language**: Unknown - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-05-17 - **Last Updated**: 2021-05-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # for support join here [TorrentLeech-Gdrive](https://telegram.dog/GBotStore) # working example group [Leech Here](https://telegram.dog/GBotStore) # Telegram Torrent Leecher πŸ”₯πŸ€– A Telegram Torrent (and youtube-dl) Leecher based on [Pyrogram](https://github.com/pyrogram/pyrogram) # Benefits :- βœ“ 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 βœ“ Unzip βœ“ Unrar βœ“ Untar βœ“ 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 `/rlcone` in private mode) βœ“ # TO-DO - ~Gdrive file clonning using Gclone~ `DONE βœ“` - [ ] 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) ### Credit goes to SpEcHiDe for his Publicleech repo. ## installing... ### The Easy Way #### STEPS (I did this to avoid the use of same button multiple times) a)You have to fork this repo at first(Don't know how toπŸ€”, Then google it😐) b)Find `app.jso`. 🧐 c)Tap on that. 😬 d)Tap to edit and just add `n` at last of name (Don't touch code🀦). ✍️ e)It should look like `app.json`. πŸŽ‰ f)Then tap πŸ‘‡πŸ‘‡ Heroku is not supported now πŸ˜• #Dead Better buy a vps 😐 and follow [this](https://github.com/gautamajay52/TorrentLeech-Gdrive#process-to-run-this-bot-on-vps) ## Process to run this BOT on VPS - Clone this repo: ``` git clone https://github.com/gautamajay52/TorrentLeech-Gdrive torrentleech-gdrive cd torrentleech-gdrive ``` - Install requirements For Debian based distros ``` sudo apt install python3 sudo snap install docker ``` Install Docker by following the [official docker docs](https://docs.docker.com/engine/install/debian/) ## Setting up config file ``` cp tobrot/g_config.py tobrot/config.py ``` After this step you will see a new file named ```config.py``` in tobrot directory. Follow and fill all the required variables that were already filled in the sample config file, but with your details. And you can also fill all other variables according to your need and all those are explained below. If you need more explanation about any variable then read [app.jso](https://github.com/gautamajay52/TorrentLeech-Gdrive/blob/master/app.jso) ##### Set Rclone 1. Set Rclone locally by following the official repo : https://rclone.org/docs/ 2. Get your `rclone.conf` file. will look like this ``` [NAME] type = scope = token = client_id = client_secret = ``` 2 Copy `rclone.conf` file in the root directory (Where `Dockerfile` exists). 3 Your config can contains multiple drive entries.(Default: First one and change using `/rclone` command) ## Deploying - 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-gdrive ``` ### The Legacy Way Simply clone the repository and run the main file: ```sh git clone https://github.com/gautamajay52/TorrentLeech-Gdrive cd TorrentLeech-Gdrive python3 -m venv venv . ./venv/bin/activate pip install -r requirements.txt # python3 -m tobrot ``` ### an example config.py πŸ‘‡ ```py from tobrot.sample_config import Config class Config(Config): TG_BOT_TOKEN = "" APP_ID = 6 API_HASH = "eb06d4abfb49dc3eeb1aeb98ae0f581e" AUTH_CHANNEL = [-1001234567890] ``` ### Variable Explanations ##### Mandatory Variables * `TG_BOT_TOKEN`: Create a bot using [@BotFather](https://telegram.dog/BotFather), and get the Telegram API token. * `APP_ID` * `API_HASH`: Get these two values from [my.telegram.org/apps](https://my.telegram.org/apps). * N.B.: if Telegram is blocked by your ISP, try our [Telegram bot](https://telegram.dog/UseTGXBot) to get the IDs. * `AUTH_CHANNEL`: Create a Super Group in Telegram, add `@GoogleIMGBot` to the group, and send /id in the chat, to get this value. * `RCLONE_CONFIG`: Create the rclone config using the rclone.org and read the rclone section for the next. * `DESTINATION_FOLDER`: Name of your folder in ur respective drive where you want to upload the files using the bot. * `OWNER_ID`: ID of the bot owner, He/she can be abled to access bot in bot only mode too(private mode). * `INDEX_LINK` ## FAQ ##### Optional Configuration Variables * `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` * `GLEECH_COMMAND` * `TELEGRAM_LEECH_COMMAND_G` * `PYTDL_COMMAND_G` * `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 fill `Default Root ID` with the id of your `DESTINATION_FOLDER` after creating. Otherwise index will not work properly. ## Available Commands * `/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](https://ytdl-org.github.io/youtube-dl/supportedsites.html) * `/pytdl`: This command will download videos from youtube playlist link and will upload to telegram. * `/ytdl gdrive`: This will download and upload to your cloud. * `/pytdl gdrive`: 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] * `/leech archive`: 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. * `/gleech archive` This command will compress the folder/file and will upload to your cloud. * `/leech unzip`: This will unzip the .zip file and dupload to telegram. * `/gleech unzip`: This will unzip the .zip file and upload to cloud. * `/leech unrar`: This will unrar the .rar file and dupload to telegram. * `/gleech unrar`: This will unrar the .rar file and upload to cloud. * `/leech untar`: This will untar the .tar file and upload to telegram. * `/gleech untar`: This will untar the .tar file and upload to cloud.. * `/tleech`: This will mirror the telegram files to ur respective cloud cloud. * `/tleech unzip`: This will unzip the .zip telegram file and upload to cloud. * `/tleech unrar`: This will unrar the .rar telegram file and upload to cloud. * `/tleech untar`: This will untar the .tar 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. * ~Only work with direct link and youtube link for now~It is like u can add custom name as prefix of the original file name. Like if your file name is `gk.txt` uploaded will be what u add in `CUSTOM_FILE_NAME` + `gk.txt` ~Only works with direct link/youtube link.No magnet or torrent.~ And also added custom name like... You have to pass link as `www.download.me/gk.txt | new.txt` the file will be uploaded as `new.txt`. ## How to Use? * send any one of the available command, as a reply to a valid link/magnet/torrent. πŸ‘Š ## Credits, and Thanks to * [GautamKumar(me)](https://github.com/gautamajay52/TorrentLeech-Gdrive) 😬 * [SpEcHiDe](https://github.com/SpEcHiDe/PublicLeech) for his wonderful code😚 * [Rclone Team](https://rclone.org) for theirs awesome tool☁️ * [Dan TΓ¨s](https://telegram.dog/haskell) for his [Pyrogram Library](https://github.com/pyrogram/pyrogram) * [Robots](https://telegram.dog/Robots) for their [@UploadBot](https://telegram.dog/UploadBot) * [@AjeeshNair](https://telegram.dog/AjeeshNait) for his [torrent.ajee.sh](https://torrent.ajee.sh) * [@gotstc](https://telegram.dog/gotstc), @aryanvikash, [@HasibulKabir](https://telegram.dog/HasibulKabir) for their TORRENT groups * [![CopyLeft](https://telegra.ph/file/b514ed14d994557a724cb.jpg)](https://telegra.ph/file/fab1017e21c42a5c1e613.mp4 "CopyLeft Credit Video")