Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Sonarr Selective Episode Monitor

A Python script that automatically toggles the monitored status of episodes in Sonarr based on a custom text list.

By default, this script is configured with a curated watch guide for Star Trek: The Next Generation (using the "Must Watch" episodes from letswatchstartrek.com's TNG Episode Guide), keeping the essential episodes monitored and unmonitoring the filler/skippable episodes. However, it can easily be customized for any TV show (e.g., The X-Files, anime fillers, Doctor Who).

Features

  • Smart Matching: Accounts for differences between your text list and TVDB/Sonarr naming schemes (e.g., matching "Part II" with "(2)").
  • Master Switch Override: Automatically ensures the Series and Season-level master switches are turned ON in Sonarr, otherwise individual episode changes won't be respected.
  • Bulk Processing: Makes minimal API calls by sending bulk payloads to update hundreds of episodes in seconds.

Prerequisites

  • Python 3.x
  • The requests library

Installation & Setup

  1. Clone or download this repository.
  2. Install the required Python dependencies:
    pip install -r requirements.txt
  3. Open sonarr_selective_monitor.py in a text editor.
  4. Locate the CONFIGURATION section at the top of the file:
    SONARR_URL = "http://localhost:8989" 
    API_KEY = "YOUR_API_KEY_HERE"
    SERIES_TITLE = "Star Trek: The Next Generation"
  5. Replace YOUR_API_KEY_HERE with your actual Sonarr API key (Found in Sonarr -> Settings -> General -> Security). Update the URL if your Sonarr is hosted elsewhere.

⚠️ WARNING: NEVER commit your API key to GitHub or share it publicly!

Usage

Run the script from your terminal:

python sonarr_selective_monitor.py

The script will output a grid showing exactly which episodes were found, what they matched against, and what API actions were sent to Sonarr. (Note: You may need to refresh your Sonarr web page in your browser to see the UI update).

Customizing for other shows

To use this for a different show:

  1. Change the SERIES_TITLE variable to the exact name of the show in Sonarr.
  2. Replace the EPISODE_LIST_TEXT variable with your own list. Just ensure you group them by season using the word Season X on its own line. Any episode listed under a season will be monitored; any episode not on the list will be unmonitored.

Credits

  • The default Star Trek: TNG episode list is credited to the "Must Watch" guide at letswatchstartrek.com.

About

A Python script that automatically toggles the monitored status of episodes in Sonarr based on a custom text list.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages