A comprehensive collection of Python utilities designed to export content from your Plex Media Server into detailed Excel reports. These tools help you catalog, audit, and manage your movie and TV show collections with powerful features like resolution tracking and TV show completeness verification.
This repository contains three specialized scripts for Plex content management:
- Plex Media Export - A complete solution that combines movie and TV show tracking in a single Excel workbook
- Plex Movie List Exporter - A focused utility for movie library cataloging
- Plex TV Show Audit Tool - A specialized script for tracking TV show completion status with TVMaze integration
All tools are designed to be user-friendly, performance-optimized, and provide valuable insights into your media collection.
- Complete inventory of your movie library
- Resolution-based highlighting (4K, 1080p, 720p, SD)
- Technical details (container format, file path)
- Content metadata (release year, studio, rating)
- Alphabetical sorting for easy reference
- Series completion overview with TVMaze verification
- Season-by-season episode counting
- Color-coded status indicators:
- ๐ฉ Green: Complete series/seasons
- ๐ฅ Red: Incomplete series/seasons
- โฌ Gray: Non-existent seasons
- Missing episode identification
- Multi-threaded processing for improved performance
- Memory-optimized Excel generation for large libraries
- Cached TVMaze lookups to reduce API calls
- Detailed progress reporting during execution
- Error handling for missing or corrupt media files
- Python 3.6 or higher
- Access to a Plex Media Server
- Plex authentication token
- Internet connection (for TVMaze integration)
- Clone the repository:
git clone https://github.com/PrimePoobah/plex-media-export.git
cd plex-media-export- Install required packages:
pip install plexapi pandas openpyxl requests- Configure your Plex settings: Edit the PLEX_URL and PLEX_TOKEN variables in the script you wish to use:
PLEX_URL = 'http://{Plex_IP_or_URL}:32400'
PLEX_TOKEN = '{YourPlexToken}'- Log into the Plex web interface
- Play any media file
- Click the three dots menu (โฎ)
- Select "Get Info"
- Click "View XML"
- Look for "X-Plex-Token" in the URL
The most comprehensive script that combines movie and TV show tracking in a single Excel workbook.
python PlexMediaExport.pyOutput: PlexMediaExport_YYYYMMDD.xlsx with two worksheets:
- Movies: Complete movie library with resolution highlighting
- TV Shows: Series completion status with TVMaze verification
A focused script for movie library cataloging.
python plex_movie_export.pyOutput: plex_movies.xlsx containing your complete movie library details.
A specialized script for TV show completion tracking.
python plex_tv_shows.pyOutput: plex_tv_shows_YYYYMMDD.xlsx showing series and season completion status.
| Column | Description |
|---|---|
| Title | Movie name |
| Video Resolution | Quality (4K, 1080p, etc.) |
| Year | Release year |
| Studio | Production studio |
| ContentRating | Rating (PG, R, etc.) |
| File | Full file path |
| Container | File format |
| Column | Description |
|---|---|
| Show Title | Series name |
| Complete Series | Overall completion ratio |
| Season X | Episodes present/total |
- ๐ฉ Light Green: 4K/UHD content
- ๐จ Yellow: 720p or lower resolution
- โฌ No Color: 1080p content (standard)
- ๐ฉ Green: Complete series/season
- ๐ฅ Red: Incomplete series/season
- โฌ Gray: Non-existent season
plexapi>=4.15.4
pandas>=1.3.0
openpyxl>=3.0.9
requests>=2.26.0
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the GNU Affero General Public License v3.0 - see the LICENSE file for details.
- python-plexapi for the Plex API integration
- TVMaze API for TV show database information
- OpenPyXL for Excel file generation
- Pandas for data processing
- Plex for their amazing media server platform
PrimePoobah - @PrimePoobah
Project Link: https://github.com/PrimePoobah/plex-media-export
A: Yes, all scripts are command-line based and don't require a GUI.
A: No, they only read data from your Plex server and don't make any changes.
A: It depends on how frequently you add content. Weekly or monthly is typical.
A: Yes, you can modify the styling variables in the scripts to customize colors and formats.
A: This usually happens when a show name doesn't match between Plex and TVMaze.
If you find these tools useful, please consider:
- Giving this project a โญ๏ธ on GitHub
- Sharing it with other Plex users
- Contributing improvements back to the project