PiCollector is a Python-based lightweight tool designed to automate the process of managing movie metadata and artwork using The Movie Database (TMDb).
-
Movie Artwork Lookup:
- PiCollector analyzes the file name of a given movie file (e.g.,
movie.mp4) to extract relevant information such as the movie title. - It uses this information to query TMDb to find and download the corresponding artwork (e.g., posters, backdrops).
- PiCollector analyzes the file name of a given movie file (e.g.,
-
Artwork Download:
- Once the artwork is identified, PiCollector downloads it to your local system. This can be useful for thumbnailing your movie collection for MiniDLNA server.
-
TMDb Collection Management:
- PiCollector also interacts with TMDb to add a record of the movie to a collection of your choice.
-
Single File Mode:
- You can provide the path to a single movie file, and PiCollector will fetch the artwork and update your TMDb collection accordingly.
- Example:
python PiCollector.py /path/to/movie.mp4
-
Folder Monitoring Mode:
- You can point PiCollector to a folder containing multiple movie files. It will monitor the folder for changes (e.g., new files added) and process them automatically.
- Example:
python PiCollector.py /path/to/movies/
The provided Makefile simplifies installation, testing, and cleanup tasks. For example:
make install: Installs PiCollector. It does not install the required dependencies.make uninstall: Uninstall PiCollector from system.make test: Runs a simple test to ensure everything is working correctly.make clean-test: Clean up test folder.
PiCollector requires the following Python libraries:
tmdbsimple: For interacting with The Movie Database (TMDb) API.inotify_simple: For monitoring folder changes in Folder Monitoring Mode.
You can install these dependencies using pip:
pip install tmdbsimple inotify_simpleThe initial studies and tests for PiCollector were conducted using Bash. This is provided as a reference and may vary depending on your environment.
Contributions are welcome! Please fork the repository and submit a pull request.
This project is licensed under the MIT License.