Skip to content

SeerBridge automates movie torrent fetching by integrating Jellyseer/Overseer with DebridMediaManager. It listens to Discord movie requests and uses DMM / Real-Debrid for efficient downloads. With features like persistent browser sessions and queue management, it simplifies media handling. Future updates include TV show support and API integration.

License

Notifications You must be signed in to change notification settings

Woahai321/SeerrBridge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŒ‰ SeerrBridge - Automate Your Media Fetching with DMM 🎬

seerrbridge-cover

GitHub last commit GitHub issues GitHub stars GitHub release Python Website LinkedIn


πŸš€ What is SeerrBridge?

πŸŒ‰ SeerrBridge is a browser automation tool that integrates Jellyseer/Overseerr with Debrid Media Manager. It listens to movie requests in Discord and automates the torrent search and download process using Debrid Media Manager via browser automation, which in turn, gets sent to Real-Debrid. This streamlines your media management, making it fast and efficient.

πŸ› οΈ Why SeerrBridge?

SeerrBridge eliminates the need to set up multiple applications like Radarr, Sonarr, Jackett, FlareSolverr, and other download clients. With SeerrBridge, you streamline your media management into one simple, automated process. No more juggling multiple toolsβ€”just request and download!

Simply put, I was too lazy to setup all of these other applications, and thought.... I want this instead.


πŸ“Š Flowchart (Rectangle of Life)

image


πŸ”‘ Key Features

  • Automated Movie Requests: Automatically processes movie requests from Discord and fetches torrents from Debrid Media Manager.
  • Debrid Media Manager Integration: Uses DMM to automate (via browser) torrent search & downloads.
  • Persistent Browser Session: Keeps a browser session alive using Selenium, ensuring faster and more seamless automation.
  • Queue Management: Handles multiple requests with an asynchronous queue, ensuring smooth processing.
  • Error Handling & Logging: Provides comprehensive logging and error handling to ensure smooth operation.
  • Setting Custom Regex / Filter in Settings: Upon launch, the script with automate the addition of a regex filter which can be updated in code.

πŸ“Š Compatibility

Service Status Notes
List Sync βœ… Our other Seerr app for importing lists
Jellyseerr βœ… Main integration. Supports movie requests via Discord
Overseerr βœ… Base application Jellyseerr is based on
Debrid Media Manager βœ… Torrent fetching automation
Real-Debrid βœ… Unrestricted (torrent) downloader
SuggestArr βœ… Automatically grab related content and send to Jellyseerr/Overseerr

(THIS SCRIPT IS STILL IN BETA AND HAS ONLY BEEN PROPERLY TESTED / RUN ON WINDOWS)

βš™ Requirements

Before you can run this bot, ensure that you have the following prerequisites:

1. Jellyseerr / Overseerr Notifications

Currently, the script is looking for the request coming in as "Movie Request Automatically Approved". Therefore, you should set your user requests to be approved automatically for this to properly function.

image

2. Real-Debrid Account

  • You will need a valid Real-Debrid account to authenticate and interact with the Debrid Media Manager.
    • Username and Password for your Real-Debrid account will be required for the bot to log in.

3. Discord Bot

  • Create a Discord bot and invite it to your server:
    1. Follow the Discord Developer Portal to create a new application.
    2. Add a bot to your application.
    3. Copy the Bot Token and Channel ID where the bot will listen for commands.
    4. Give your bot the necessary permissions (e.g., MESSAGE_READ, MESSAGE_WRITE, and MESSAGE_CONTENT intent).

4. ChromeDriver

  • ChromeDriver is required to automate browser tasks using Selenium.
    • Ensure that the version of ChromeDriver matches your installed version of Google Chrome.
      • Download it manually and provide the path in your .env file.

5. Python 3.10.11+

  • The bot requires Python 3.10.11 or higher. You can download Python from here.
  • Ensure that pip (Python's package installer) is installed and up-to-date by running:
    python -m ensurepip --upgrade

6. Required Python Libraries

  • The following Python libraries are required and will be installed automatically if you run the pip install command:
    • discord.py
    • selenium
    • python-dotenv
    • webdriver-manager
  • You can install the required libraries by running:
    pip install -r requirements.txt

Example .env File

Create a .env file in the root directory of the project and add the following environment variables:

DISCORD_TOKEN=your-discord-bot-token
DISCORD_CHANNEL_ID=your-discord-channel-id
REAL_DEBRID_USERNAME=your-real-debrid-username
REAL_DEBRID_PASSWORD=your-real-debrid-password
CHROMEDRIVER_PATH=path-to-chromedriver

πŸ› οΈ Getting Started

Sending Notifications to Discord from Jellyseerr

If you are not already sending notifications, follow the JellySeerr documention configure accordingly.

Discord Bot Setup

  1. Login to Discord Developer here.

  2. Create a new application and give it a name

image image

  1. Navigate to "Bot" and grab the Token by hitting "Reset Token" and jot this down, securely, for later.

image image

  1. Under the same Bot page, scroll and enable all of the intents (not sure if they are all needed, just what I am doing)

image

  1. Go to the "Installation" Tab, add the needed permissions as shown, copy the url, save changes, and add the bot to your server

image

  1. Add the bot into the Discord channel you have JellySeerr notifications going into. Add the channel ID & token we saved earlier into your .env file.

image

Python Environment

  1. Clone the repository:
    git clone https://github.com/Woahai321/SeerrBridge.git
    cd SeerrBridge
  2. Install dependencies:
    pip install -r requirements.txt
  3. Run the application:
    python seerrbridge.py

πŸ›€οΈ Roadmap

  • Faster Processing: Implement concurrency to handle multiple requests simultaneously.
  • TV Show Support: Extend functionality to handle TV series and episodes. (COMING SOON)
  • Jellyseer/Overseer API Integration: Direct integration with Jellyseer/Overseer API for smoother automation and control.

πŸ” How It Works

  1. Discord Integration: SeerrBridge listens for movie requests in a designated Discord channel.
  2. Automated Search: It uses Selenium to automate the search for movies on Debrid Media Manager site.
  3. Torrent Fetching: Once a matching torrent is found, SeerrBridge automates the Real-Debrid download process.
  4. Queue Management: Requests are added to a queue and processed one by one, ensuring smooth and efficient operation.

If you want to see the automation working in realtime, you can edit the code and add a # to the headless line

image

This will launch a visible Chrome browser. Be sure not to mess with it while its operating or else you will break the current action / script and need a re-run.

Example:

Seerr


πŸ“ž Contact

Have any questions or need help? Feel free to open an issue or connect with us on LinkedIn.


🀝 Contributing

We welcome contributions! Here’s how you can help:

  1. Fork the repository on GitHub.
  2. Create a new branch for your feature or bug fix.
  3. Commit your changes.
  4. Submit a pull request for review.

πŸ’° Donations

If you find SeerrBridge useful and would like to support its development, consider making a donation:

  • BTC (Bitcoin): bc1qxjpfszwvy3ty33weu6tjkr394uq30jwkysp4x0
  • ETH (Ethereum): 0xAF3ADE79B7304784049D200ea50352D1C717d7f2

Thank you for your support!


πŸ“„ License

This project is licensed under the MIT License.


Star History

Star History Chart


πŸ“œ Legal Disclaimer

This repository and the accompanying software are intended for educational purposes only. The creators and contributors of this project do not condone or encourage the use of this tool for any illegal activities, including but not limited to copyright infringement, illegal downloading, or torrenting copyrighted content without proper authorization.

Usage of the Software:

  • SeerrBridge is designed to demonstrate and automate media management workflows. It is the user's responsibility to ensure that their usage of the software complies with all applicable laws and regulations in their country.
  • The tool integrates with third-party services which may have their own terms of service. Users must adhere to the terms of service of any external platforms or services they interact with.

No Liability:

  • The authors and contributors of this project are not liable for any misuse or claims that arise from the improper use of this software. You are solely responsible for ensuring that your use of this software complies with applicable copyright laws and other legal restrictions.
  • We do not provide support or assistance for any illegal activities or for bypassing any security measures or protections.

Educational Purpose:

This tool is provided as-is, for educational purposes, and to help users automate the management of their own legally obtained media. It is not intended to be used for pirating or distributing copyrighted material without permission.

If you are unsure about the legality of your actions, you should consult with a legal professional before using this software.

About

SeerBridge automates movie torrent fetching by integrating Jellyseer/Overseer with DebridMediaManager. It listens to Discord movie requests and uses DMM / Real-Debrid for efficient downloads. With features like persistent browser sessions and queue management, it simplifies media handling. Future updates include TV show support and API integration.

Resources

License

Stars

Watchers

Forks

Languages