PlexPlaylistMaker is an advanced Python application that facilitates the creation of Plex Media Server playlists directly from IMDb and Letterboxd lists (supports both Movie and TV Show lists). It provides a seamless integration, allowing users to enrich their Plex viewing experience by leveraging curated lists from popular movie databases.
- Support for IMDb and Letterboxd: Create Plex playlists from public IMDb and Letterboxd lists using web scraping and the Cinemagoer API.
- Seamless Plex Server Integration: Compatible with any accessible Plex Media Server for playlist management.
- Intuitive Graphical User Interface: Easy-to-navigate GUI for hassle-free list import and playlist creation.
- Robust Error Handling: Advanced error handling for reliable data fetching and playlist creation.
- Efficient Processing: Multi-threading for IMDb and Letterboxd data retrieval, offering fast synchronization.
PlexPlaylistMaker does not use the official APIs of IMDb or Letterboxd for data retrieval. Instead, it relies on web scraping techniques and the Cinemagoer API (a third-party IMDb interface) to gather list information.
- Support more sites possibly
- Add better logging
- Add UI progress bar/notification
Before you can use PlexPlaylistMaker, ensure you have the following:
- Plex Media Server setup and accessible.
- Python 3.6+ installed on your system.
- Required Python packages: requests, plexapi, beautifulsoup4, imdbpy, json, threading, Pillow, customtkinter, and CTkMessagebox.
- Clone or download the program from the repository.
- Install the required Python packages using the command below or by executing the provided batch file in the source code:
pip install requests plexapi beautifulsoup4 imdbpy Pillow customtkinter CTkMessagebox
- Launch the App: Open PlexPlaylistMaker and log in to your Plex account.
- Select a Server: Choose the Plex server where the playlist will be created.
- Enter List URL: Paste the URL from IMDb or Letterboxd.
- Name Your Playlist: Define a unique name for your playlist.
- Create: Click on "Create Playlist" and wait for the process to complete, especially for larger lists.
- primetime43
- xlenore for the basic UI layout
pyinstaller --onefile --noconsole --add-data "icons;icons" PlexPlaylistMakerGUI.py