@soitora/plexanisync-mapping-assistant
v2.1.1
Published
PlexAniSync Mapping Assistant
Downloads
113
Maintainers
Readme
PlexAniSync Mapping Assistant
TheMovieDB/TheTVDB Mapping Assistant for PlexAniSync, specifically, for contribution to the custom mappings project.
Also check out Plex GUID Grabber to grab the show GUID easily, requires something that can run userscript in your browser, i.e. Violentmonkey / Tampermonkey.
Repositories
Guide
Step 1: Prerequisites
Make sure you have Node.js
and npm
installed on your machine.
If not, you can download and install them from Node.js official website.
Step 2: Clone the Repository
Clone the repository to your local machine using the following command:
git clone https://github.com/Soitora/PlexAniSync-Mapping-Assistant.git
Step 3: Navigate to Project Directory
Change into the project directory:
cd PlexAniSync-Mapping-Assistant
Step 4: Install Dependencies
Run the following command to install project dependencies:
npm install
Step 5: Create .env file
Copy the provided .env.example
file to a new file named .env
:
cp .env.example .env
Step 6: Edit .env File
Open the .env
file in a text editor and fill in the environment variables with appropriate values.
[!NOTE]
- You do not need both
TMDB_APIKEY
andTVDB_APIKEY
to run this, only one is required at minimum.- You do not need to tweak/add
DUMMY_QUERY
unless that doesn't work for you.- Both
PLEX_TOKEN
andPLEX_API
is also optional, but highly recommended forguid
in the output.
Step 7: Configuration
You can copy config/default.yaml.example
as config/default.yaml
to use custom settings.
Read here for more regarding configuration files.
Settings:
preferMetadata
- Possible values:
tmdb
,tvdb
- Type:
string
- Possible values:
preferMedia
- Possible values:
tv
,movie
- Type:
string
- Possible values:
copyResults
- Possible values:
true
,false
- Type:
boolean
- Possible values:
saveResults
- Possible values:
true
,false
- Type:
boolean
- Possible values:
dualOutput
(requiressaveResults
beingtrue
in prompt)- Possible values:
true
,false
- Type:
boolean
- Possible values:
inputFilePath
- A valid path to a TXT input file, see the README example.
- Type:
string
outputFilePath
- A valid path for the output YAML files, see the README example.
- Type:
string
Default config:
userConfig:
preferMetadata: "tmdb"
preferMedia: "tv"
copyResults: true
saveResults: false
dualOutput: true
inputFilePath: "batch/input.txt"
outputFilePath: "batch/output/"
Examples:
Changing metadata agent
This is useful if you for example only want to use TVDB, and maybe always save results to a file as well, then you can change
userConfig:
preferMetadata: "tvdb"
saveResults: true
Changing output paths
This is useful if you for example you want the processed files to be output to a folder on your Desktop
userConfig:
inputFilePath: "C:/Users/USER/Desktop/Scraper/input.txt"
outputFilePath: "C:/Users/USER/Desktop/Scraper/"
Step 8: Run the Assistant
You can now run the mapping assistant using the following command:
npm run assistant
Auto-scraping (Optional)
If you would prefer to input a large number of IDs, and have the program output a file for you, you can do it using this script.
Make sure that you fill batch\input.txt
with a newline-seperated list of IDs.
npm run auto
Debugging (Optional)
If you need to debug and test towards API directly, you can use the following command:
npm run debug
Testing (Optional)
To run tests to make sure the API is spitting out the correct information, use the following command:
npm test
Scripts
assistant
: Runs the assistant scriptdebug
: Runs the debug script to see raw outputs of APIs
Issues
If you have any issues, please open a new issue in the Issues section of this repository.
Credits
Thank you to all the people who have contributed!