Plex-Meta-Manager/docs/home/scripts/set-creator.md
2023-02-27 11:53:54 -05:00

7.1 KiB

Metadata Set Creator

Metadata Set Creator is an open source Python 3 project that has been created to create a Plex Meta Manager metadata file and associated set file for a list.

Installing Metadata Set Creator

Generally, Metadata Set Creator can be installed in one of two ways:

  1. Running on a system as a Python script [we will refer to this as a "local" install]
  2. Running as a Docker container

GENERALLY SPEAKING, running as a Docker container is simpler, as you won't have to be concerned about installing Python, or support libraries, or any possible system conflicts generated by those actions.

For this reason, it's generally recommended that you install via Docker rather than directly on the host.

If you have some specific reason to avoid Docker, or you prefer running it as a Python script for some particular reason, then this general recommendation is not aimed at you. It's aimed at someone who doesn't have an existing compelling reason to choose one over the other.

Install Walkthroughs

There are no detailed walkthroguhs specifically for Metadata Set Creator but the process is extremely similar to how you would do it with Plex Meta Manager.

Local Install Overview

Metadata Set Creator is compatible with Python 3.11. Later versions may function but are untested.

These are high-level steps which assume the user has knowledge of python and pip, and the general ability to troubleshoot issues.

  1. Clone or download and unzip the repo.
git clone https://github.com/meisnate12/Metadata-Set-Creator
  1. Install dependencies:
pip install -r requirements.txt
  1. If the above command fails, run the following command:
pip install -r requirements.txt --ignore-installed

At this point Metadata-Set-Creator has been installed, and you can verify installation by running:

python metadata_set_creator.py

Docker Install Overview

Docker Run:

docker run -v <PATH_TO_CONFIG>:/config:rw meisnate12/metadata-set-creator
  • The -v <PATH_TO_CONFIG>:/config:rw flag mounts the location you choose as a persistent volume to store your files.
    • Change <PATH_TO_CONFIG> to a folder where your .env and other files are.
    • If your directory has spaces (such as "My Documents"), place quotation marks around your directory pathing as shown here: -v "<PATH_TO_CONFIG>:/config:rw"

Example Docker Run command:

These docs are assuming you have a basic understanding of Docker concepts. One place to get familiar with Docker would be the official tutorial.

docker run -v "X:\Media\Metadata Set Creator\config:/config:rw" meisnate12/metadata-set-creator

Docker Compose:

Example Docker Compose file:

version: "2.1"
services:
  plex-meta-manager:
    image: meisnate12/metadata-set-creator
    container_name: metadata-set-creator
    environment:
      - TZ=TIMEZONE #optional
    volumes:
      - /path/to/config:/config
    restart: unless-stopped

Dockerfile

A Dockerfile is included within the GitHub repository for those who require it, although this is only suggested for those with knowledge of dockerfiles. The official Metadata Set Creator build is available on the Dockerhub Website.

Options

Each option can be applied in three ways:

  1. Use the Shell Command when launching.
  2. Setting the Environment Variable.
  3. Adding the Environment Variables to config/.env
Option Description Required
List URL TMDb List, TMDb Collection, IMDb List, Trakt List, or MDbList List URL.
Shell Command: -u or --url "https://trakt.tv/users/movistapp/lists/christmas-movies"
Environment Variable: URL=https://trakt.tv/users/movistapp/lists/christmas-movies
PMM Config Path to PMM Config with TMDb/Trakt configured. Default: config/config.yml
Shell Command: -pm or --pmm-config "C:\Plex Meta Manager\config\config.yml"
Environment Variable: PMM_CONFIG=C:\Plex Meta Manager\config\config.yml
Timeout Timeout can be any number greater then 0. Default: 600
Shell Command: -ti or --timeout 1000
Environment Variable: TIMEOUT=1000
TPDb Placeholders Add TPDb placeholders over url placeholders.
Shell Command: -tp or --tpdb
Environment Variable: TPDB=True
Background Placeholders Add Background placeholders.
Shell Command: -b or --background
Environment Variable: BACKGROUND=True
Season Placeholders Add Season posters placeholders.
Shell Command: -s or --season
Environment Variable: SEASON=True
Episode Placeholders Add Episode posters placeholders.
Shell Command: -e or --episode
Environment Variable: EPISODE=True
Trace Logs Run with extra trace logs.
Shell Command: -tr or --trace
Environment Variable: TRACE=True
Log Requests Run with every request logged.
Shell Command: -lr or --log-requests
Environment Variable: LOG_REQUESTS=True

Example .env File

URL=https://trakt.tv/users/movistapp/lists/christmas-movies
PMM_CONFIG=C:\Plex Meta Manager\config\config.yml
TIMEOUT=600
TPDB=True
BACKGROUND=False
SEASON=True
Episode=True
TRACE=False
LOG_REQUESTS=False