A Telegram mirror bot which can be deployed using Heroku.

Overview

Slam

Slam Mirror Bot

This is a telegram bot writen in python for mirroring files on the internet to our beloved Google Drive.

Getting Google OAuth API credential file

  • Visit the Google Cloud Console
  • Go to the OAuth Consent tab, fill it, and save.
  • Go to the Credentials tab and click Create Credentials -> OAuth Client ID
  • Choose Desktop and Create.
  • Use the download button to download your credentials.
  • Clone this repo:
git clone https://github.com/breakdowns/slam-mirrorbot mirrorbot/
cd mirrorbot
  • Move that file to the root of mirrorbot, and rename it to credentials.json
  • Visit Google API page
  • Search for Drive and enable it if it is disabled
  • Finally, run the script to generate token file (token.pickle) for Google Drive:
pip install google-api-python-client google-auth-httplib2 google-auth-oauthlib
python3 generate_drive_token.py

Deployment

Fork this repo, than upload credentials.json and token.pickle to your forks

Deploy to Heroku

Features supported:

  • Mirroring direct download links to Google Drive
  • Mirroring Mega.nz links to Google Drive (In development stage)
  • Mirroring Uptobox.com links to Google Drive (Uptobox account must be premium)
  • Copy files from someone's drive to your drive (Using Autorclone)
  • Download/upload progress
  • Download/upload speeds and ETAs
  • Docker support
  • Uploading To Team Drives.
  • Index Link support
  • Service account support
  • Mirror all youtube-dl supported links
  • Mirror telegram files
  • Delete files from drive
  • Add stickers to your pack
  • Nyaa.si and Sukebei Torrent search
  • Shell and Executor
  • Index Link support
  • Shortener support
  • Custom Buttons
  • Speedtest with picture results
  • Extract these filetypes and uploads to google drive

ZIP, RAR, TAR, 7z, ISO, WIM, CAB, GZIP, BZIP2, APM, ARJ, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, LZH, LZMA, LZMA2, MBR, MSI, MSLZ, NSIS, NTFS, RPM, SquashFS, UDF, VHD, XAR, Z.

Using service accounts for uploading to avoid user rate limit

For Service Account to work, you must set USE_SERVICE_ACCOUNTS="True" in config file or environment variables Many thanks to AutoRClone for the scripts NOTE: Using service accounts is only recommended while uploading to a team drive.

Generate service accounts What is service account

Let us create only the service accounts that we need. Warning: abuse of this feature is not the aim of this project and we do NOT recommend that you make a lot of projects, just one project and 100 sa allow you plenty of use, its also possible that over abuse might get your projects banned by google.

Note: 1 service account can copy around 750gb a day, 1 project can make 100 service accounts so that's 75tb a day, for most users this should easily suffice. 

python3 gen_sa_accounts.py --quick-setup 1 --new-only

A folder named accounts will be created which will contain keys for the service accounts

NOTE: If you have created SAs in past from this script, you can also just re download the keys by running:

python3 gen_sa_accounts.py --download-keys project_id

Add all the service accounts to the Team Drive

  • Run:
python3 add_to_team_drive.py -d SharedTeamDriveSrcID

Youtube-dl authentication using .netrc file

For using your premium accounts in youtube-dl, edit the .netrc file according to following format:

machine host login username password my_youtube_password

where host is the name of extractor (eg. youtube, twitch). Multiple accounts of different hosts can be added each separated by a new line

Credits

Thanks to:

and many more people who aren't mentioned here, but may be found in Contributors.

Comments
  • bot: Change deploy method

    bot: Change deploy method

    • change deploy method to heroku container registry
    • for now, we no need HEROKU_EMAIL in github secrets
    • update credits

    Signed-off-by: GudMeong [email protected]

    opened by gudmeong 5
  • Undefined name: pe --> pw

    Undefined name: pe --> pw

    $ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics

    ./slam-mirrorbot/bot/helper/mirror_utils/download_utils/direct_link_generator.py:351:39: F821 undefined name 'pe'
            req = requests.post(url, data=pe)
                                          ^
    1     F821 undefined name 'pe'
    1
    
    opened by cclauss 2
  • added proxy support

    added proxy support

    added proxy support for watch command (for personal use,might have to modify to make it usable)(im a noob) , you have to use /watch [youtube-dl supported link] [quality] |[CustomName] | [http://username:[email protected]:port/]

    other usable methods ex - http(s)://PROXY_URL:PROXY_PORT socks5://127.0.0.1:1080

    opened by eXtizi 2
  • Sourcery refactored master branch

    Sourcery refactored master branch

    Branch master refactored by Sourcery.

    If you're happy with these changes, merge this Pull Request using the Squash and merge strategy.

    See our documentation here.

    Run Sourcery locally

    Reduce the feedback loop during development by using the Sourcery editor plugin:

    Review changes via command line

    To manually merge these changes, make sure you're on the master branch, then run:

    git fetch origin sourcery/master
    git merge --ff-only FETCH_HEAD
    git reset HEAD^
    

    Help us improve this pull request!

    opened by sourcery-ai[bot] 1
  • Sourcery refactored master branch

    Sourcery refactored master branch

    Branch master refactored by Sourcery.

    If you're happy with these changes, merge this Pull Request using the Squash and merge strategy.

    See our documentation here.

    Run Sourcery locally

    Reduce the feedback loop during development by using the Sourcery editor plugin:

    Review changes via command line

    To manually merge these changes, make sure you're on the master branch, then run:

    git fetch origin sourcery/master
    git merge --ff-only FETCH_HEAD
    git reset HEAD^
    

    Help us improve this pull request!

    opened by sourcery-ai[bot] 1
Releases(v5.2)
  • v5.2(Sep 22, 2021)

  • v5.1(Sep 4, 2021)

  • v5.0(Aug 7, 2021)

  • v4.8.7(Jun 19, 2021)

    • Tar/Unzip G-Drive Links Support
    • Fix overall download speed for Mega and others
    • Add shell custom command
    • Add Set Variable, Delete Variable, and Bot Info Menu (Only for Heroku)
    • Add Updater for update Bot from upstream
    • Torrent Search: Add 1337x, piratebay, tgx, yts, eztv, torlock, rarbg support

    NOTE: Please Redeploy

    Source code(tar.gz)
    Source code(zip)
  • v4.8.6(Jun 14, 2021)

    • direct_link_generator: add letsupload.io, feurl.com, pixeldrain.com support
    • Block Drive & YouTube link using /mirror command
    • Remove anime & stickers module, because not related in mirror bot
    • Some update in aria.sh
    • Tidying Up

    NOTE: Refroks & Redeploy Recommended.

    Source code(tar.gz)
    Source code(zip)
  • v4.8.4(Jun 8, 2021)

    • Added support for tar.xz
    • Fix Mega auto canceling if deleted file
    • Direct link generator: Addad Naniplay.com, Naniplay.nanime.in, Naniplay.nanime.biz, Sbembed.com, Streamsb.net support
    Source code(tar.gz)
    Source code(zip)
  • v4.8.3(Jun 5, 2021)

  • v4.8.2(Jun 4, 2021)

    • direct link generator: Added Hxfile, Anonfiles, Fembed (femax20 & layarkacaxxi), Onedrive (Only works for file not folder for now, thanks to UsergeTeam) support
    • aria: Added more tracker
    Source code(tar.gz)
    Source code(zip)
  • v4.8.1(May 31, 2021)

  • v4.8.0(May 30, 2021)

  • v4.7.6(May 18, 2021)

  • v4.7.5(May 17, 2021)

    • Added sudo using database NOTE: redeploy recommended to generating database, or you can go to your herokuapp > resources > add-ons > then serach Heroku Postgres > hit Submit Order Form. Done Database will automatic come in config vars
    • mirror: Fix for uploading telegram file_name of None type
    • gdriveTools: Fix infinite loop when hitting rate limits
    Source code(tar.gz)
    Source code(zip)
  • v4.6.9(Apr 26, 2021)

  • v4.6.6(Apr 18, 2021)

    • direct_links: Added racaty.net support
    • Update support group link
    • Fix Index URL encode problem
    • Added support for password protected index links by magneto
    Source code(tar.gz)
    Source code(zip)
  • v4.6.3(Apr 12, 2021)

  • v4.6.2(Apr 8, 2021)

  • v4.6(Mar 29, 2021)

  • v4.4(Mar 22, 2021)

  • v4.2(Mar 17, 2021)

  • v3.8(Mar 9, 2021)

  • v3.7(Mar 6, 2021)

  • v3.0(Mar 3, 2021)

    • Added auto generate Telegraph Token
    • Added Inline Buttons
    • Update /stats command
    • /list module will post search result on telegra.ph
    • Speedtest
    Source code(tar.gz)
    Source code(zip)
PlaylistAudioBot - Telegram playlist download bot with ytdl

Telegram PlaylistAudioBot PlaylistAudioBot: 🇬🇧 Telegram playlist download bot

Hüzünlü Artemis [HuzunluArtemis] 14 Jul 22, 2022
Check your bot status automatically using userbot, simply and easy

Status Checker Userbot check your bot status automatically using userbot, simply and easy. Mandatory Vars API_ID : Telegram API_ID, get it from my.tel

ALBY 6 Feb 20, 2022
Asynchronous wrapper for wttr.in weather forecast.

aiopywttr Asynchronous wrapper for wttr.in weather forecast. Synchronous version here. Installation pip install aiopywttr Example This example prints

Almaz 4 Dec 24, 2022
A plugin for modmail-bot for stealing,making ,etc emojis

EmojiPlugin for the Modmail-bot My first plugin .. its very Basic I will make more and better too Only 3 commands for now emojiadd-supports .jpg, .png

1 Dec 28, 2021
Tools untuk krek akun igeh :v

Instalasi pkg update && pkg upgrade -y pkg install python git -y rm -rf InstaCrack git clone https://github.com/AngCyber/InstaCrack pip install reques

Moch Aang Ardiansyah-XD 12 Apr 05, 2022
OpenSea-Python-Bot - OpenSea Python Bot can be used in 2 modes

OpenSea-Python-Bot OpenSea Python Bot can be used in 2 modes. When --nft paramet

49 Feb 10, 2022
Обертка для мини-игры "рабы" на python

Slaves API Библиотека для игры Рабы на Python. Большая просьба Поставьте звездочку на репозиторий. Это много для меня значит. Версии Т.к. разработчики

Zdorov Philipp 13 Mar 31, 2021
A full-featured Python wrapper for the Onfleet API.

UPDATE: Please use Onfleet's wrapper instead. This repository is not maintained. https://github.com/onfleet/pyonfleet --- Python-Onfleet   python-onfl

Lionheart Software 11 Jan 13, 2022
A simple Facebook Account generator, written in python (needs different Email so Accounts do not get banned)

FacebookAccountGenerator FAB is a Facebook-Account generating script, written in python Installation Use the package manager pip to install selenium p

MrOverload 7 Jan 05, 2023
A basic template for Creating Odoo Module

Odoo ERP Boilerplate A basic template for Creating Odoo Module. Folders inside this repository consist of snippet code and a module example. Folders w

Altela Eleviansyah Pramardhika 1 Feb 06, 2022
A Python library to access Instagram's private API.

Instagram Private API A Python wrapper for the Instagram private API with no 3rd party dependencies. Supports both the app and web APIs. Overview I wr

2.6k Jan 05, 2023
The Social-Engineer Toolkit (SET) is specifically designed to perform advanced attacks against the human element.

The Social-Engineer Toolkit (SET) The Social-Engineer Toolkit (SET) is specifically designed to perform advanced attacks against the human element. SE

Professor 6 Nov 28, 2022
Esse script procura qualquer, dados que você queira na wikipedia! Em breve traremos um com dados em toda a internet.

Buscador de dados simples Dependências necessárias Para você poder começar a utilizar esta ferramenta, você vai precisar da dependência "wikipedia", p

Erick Campoy 4 Feb 24, 2022
Auto filter bot for python

Media Search bot Index channel or group files for inline search. When you post file on telegram channel or group this bot will save that file in datab

1 Dec 22, 2021
A Telegram user bot to count telegram channel subscriber or group member.

Subscriber Count Userbot A Telegram user bot to count telegram channel subscriber or group member. This tool is only for educational purpose. You coul

IDNCoderX 8 Nov 30, 2022
Turns any script into a telegram bot

pytobot Turns any script into a telegram bot Install pip install --upgrade pytobot Usage Script: while True: message = input() if message == "

Dmitry Kotov 17 Jan 06, 2023
Asynchronous Python API Wrapper for phisherman.gg

Asynchronous Python API Wrapper for phisherman.gg

Qrista Labs 4 Apr 30, 2022
Stream Telegram files to web

Telegram File Stream Bot A Telegram bot to stream files to web Demo Bot » Report a Bug | Request Feature Table of Contents About this Bot Original Rep

Wrench 572 Jan 09, 2023
Collection of AWS Fault Injection Simulator (FIS) experiment templates.

Collection of AWS Fault Injection Simulator (FIS) experiment templates. These templates let you perform chaos engineering experiments on resources (applications, network, and infrastructure) in the A

Adrian Hornsby 8 Nov 27, 2022
A Discord Self-Bot in Python

👨‍💻 Discord Self Bot 👨‍💻 A Discord Self-Bot in Python by natrix Installation Run: selfbot.bat Python: version : 3.8 Modules

natrix_dev 3 Oct 02, 2022