Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Plex Bulk ClearLogo Updater

A lightweight, automated Python script to bulk-assign missing Clear Logos to your Plex media server libraries without overwriting your manual customizations.

The script bypasses SSL certificate issues when connecting locally and features built-in rate-limiting to prevent your server or network proxy from getting banned by metadata providers.

Features

  • Fully Automated: Scans entire libraries and selects the first available pre-fetched metadata logo automatically.
  • Smart Skip: Safely skips any movies or TV shows that already have an actively selected logo.
  • Local SSL Bypass: Safely ignores self-signed certificate errors when connecting via local IP addresses.
  • Rate-Limiting: Introduces configurable pauses between API calls to avoid spamming network hooks, proxies, or metadata APIs.

Prerequisites

Before running the script, make sure you have Python installed and install the official plexapi and requests libraries:

pip install plexapi requests urllib3

Setup & Configuration

  1. Open the script file and look for the # --- CONFIGURATION --- section.
  2. Update the following variables with your actual Plex server details:
# --- CONFIGURATION ---
# Use your local Plex IP and port (e.g., https://192.168.1.100:32400)
PLEX_URL = 'https://LOCAL_IP_ADDRESS:32400'  
PLEX_TOKEN = 'YOUR_PLEX_TOKEN'

# The exact names of the Plex libraries you want to process
TARGET_LIBRARIES = ["Movies", "TV Shows"]

# Rate-limit settings (in seconds)
DELAY_BETWEEN_LOGOS = 2.0  # Pause after each assigned logo
BATCH_SIZE = 10            # Number of logos before a long safety pause
BATCH_PAUSE = 10.0         # Duration of the long safety pause
# ---------------------

Note: If you do not know how to find your Plex Token, follow the official Plex documentation: Finding an Authentication Token.

Usage

Simply run the script using Python from your terminal or command prompt:

python plex-bulk-logo-updater.py

Why use Local IP instead of a Public Domain?

Running this script through a public Reverse Proxy (like Nginx, Traefik, or SWAG) protected by tools like Fail2Ban or CrowdSec will likely trigger security blocks due to the high volume of automated HTTP requests. Connecting directly to your local IP address completely bypasses the proxy and eliminates the risk of IP bans.

License

This project is open-source and available under the MIT License.

About

A lightweight, automated Python script to bulk-assign missing Clear Logos to your Plex Media Server libraries

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages