Giter VIP home page Giter VIP logo

plexanisync-custom-mappings's Introduction

PlexAniSync Custom Mappings

YAML Badge YAML Badge YAML Badge

Discord Shield

Custom mappings intended for use with the PlexAniSync project.

How to use

For full information, read this section.

Example custom_mappings.yaml with The Movie Database, which is the default provider using the built-in Plex agent:

remote-urls:
  - https://raw.githubusercontent.com/RickDB/PlexAniSync-Custom-Mappings/main/series-tmdb.en.yaml
  - https://raw.githubusercontent.com/RickDB/PlexAniSync-Custom-Mappings/main/movies-tmdb.en.yaml

Mappings

English

The Movie Database - Series

The Movie Database - Movies

TheTVDB - Series

Contributing

Pull requests are welcome. For questions and major changes, please open an issue first to discuss what you would like to change.

If you got any questions, join our Discord server.

Helpful tool

Soitora/PlexAniSync-Mapping-Assistant - GitHub

Credits

Thank you to all the people who have already contributed!

plexanisync-custom-mappings's People

Contributors

actions-user avatar adamus1red avatar alexarawr avatar arial-z avatar bl4ckswordsman avatar blackdotraven avatar cyberlane avatar emiliaaah avatar faustvii avatar graya4 avatar greenglasst avatar guinhoz avatar hollanbm avatar icco avatar interactiveninja avatar jacobmix avatar jaynator495 avatar jessb321 avatar jotsu avatar lucassymons avatar noogai15 avatar nuxencs avatar puff0 avatar ravencentric avatar reconman avatar rickdb avatar shanarys avatar soitora avatar spencer-0003 avatar vtruong68 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plexanisync-custom-mappings's Issues

Special characters cause errors on Windows devices

im using the custom mappings from here
https://github.com/RickDB/PlexAniSync-Custom-Mappings/blob/main/series-tvdb.en.yaml

i copied and pasted everything into 'custom_mappings.yaml'
and i get the following error when i run 'python PlexAniSync.py'

C:\Program Files\Plex\PlexAniSync>python PlexAniSync.py
2022-02-06 10:17:38 PlexAniSync - version: 1.3.16
2022-02-06 10:17:38 [MAPPING] Custom map file found: custom_mappings.yaml
Traceback (most recent call last):
File "C:\Program Files\Plex\PlexAniSync\PlexAniSync.py", line 130, in
start()
File "C:\Program Files\Plex\PlexAniSync\PlexAniSync.py", line 83, in start
anilist.CUSTOM_MAPPINGS = read_custom_mappings()
File "C:\Program Files\Plex\PlexAniSync\custom_mappings.py", line 32, in read_custom_mappings
file_mappings = yamale.make_data(MAPPING_FILE, parser='ruamel')
File "C:\Python310\lib\site-packages\yamale\yamale.py", line 29, in make_data
raw_data = readers.parse_yaml(path, parser, content=content)
File "C:\Python310\lib\site-packages\yamale\readers\yaml_reader.py", line 35, in parse_yaml
return parse(f)
File "C:\Python310\lib\site-packages\yamale\readers\yaml_reader.py", line 17, in _ruamel
return list(yaml.load_all(f))
File "C:\Python310\lib\site-packages\ruamel\yaml\main.py", line 460, in load_all
while constructor.check_data():
File "C:\Python310\lib\site-packages\ruamel\yaml\constructor.py", line 108, in check_data
return self.composer.check_node()
File "_ruamel_yaml.pyx", line 687, in _ruamel_yaml.CParser.check_node
File "_ruamel_yaml.pyx", line 902, in _ruamel_yaml.CParser._parse_next_event
File "_ruamel_yaml.pyx", line 911, in _ruamel_yaml.input_handler
File "C:\Python310\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8d in position 5624: character maps to

C:\Program Files\Plex\PlexAniSync>

How would you like to manage different languages?

I have added some German synonyms to some shows that did not match on my German Plex instance in PR #46.
I have added them to the series-tvdb.en.yaml, but it feels like the wrong approach for shows that are not matched in German, but perfectly fine in English.

What are your thoughts on different language synonyms in this project? Should they be added to the series-tvdb.en.yaml?

Especially because I already have another show in my fork that is not mapped to German, so I thought I'd ask again if this is the correct way to go before I create another PR.

Sorter and Validator

Using the Sort.py and Validate.py files I have noticed two things.

  1. validate.py requires custom_mappings_schema.json, but it needs to be local in the same folder, but it's not on the .gitignore
  2. sort.py changes all my files to CRLF, it doesn't enforce the currently used LF

Problem with guid

Hello, I wanted to let you know that apparently the Dragon Ball Z guid are no longer working.

Naming scheme

In RickDB/PlexAniSync#81 (comment) it was suggested to use maybe custom_mappings_en.yaml for the main mappings.

Maybe custom_mappings-en.yaml?

Anyone got any better ideas?
Do we maybe add service specific mappings too if someone wants to maintain?
TVDB might become irrelevant but might still be users who wants to map AniDB or other?

Example

custom_mappings-tvdb-en.yaml
custom_mappings-anidb-en.yaml
custom_mappings-tmdb-de.yaml

Other

Do we place these in individual folders so they can have their own README? Or do we skip README and instead do YAML comments which might be easier to maintain and use?

Issues with seasons 2 and onwards not being found on anilist even though season 1 works fine

My plex uses Japanese titles and when a show has more than one season, the first season is picked up without issue but the second (and any others after it) are "not found" on anilist. Here are a few examples, but this happens with every single show with more than 1 season that I've looked at:

image
image
image
image

What seems to fix the problem:

Manually copying the entry for the English title, but then replacing it with the Japanese title in my own custom-mappings file. Example for fixing Oshi no Ko:

- title: "[推しの子]"
    guid: plex://show/62a3245d52758f8243740884
    # imdb: https://www.imdb.com/title/tt21030032/
    # tmdb: https://www.themoviedb.org/tv/203737
    # tvdb: https://www.thetvdb.com/dereferrer/series/421069
    seasons:
      - season: 1
        anilist-id: 150672
      - season: 2
        anilist-id: 166531

The exact same plex guid and seasons entries are used, but the title is changed to the Japanese one. I've only tested this on a few shows and it seems to work but I haven't checked more than a handful. When I enter the plex guid link into my browser, it opens the correct show, so I know the guid association is still correct even with the JP title in plex.

I am using this url: https://raw.githubusercontent.com/RickDB/PlexAniSync-Custom-Mappings/main/series-tvdb.en.yaml and ghcr.io/rickdb/plexanisync:latest

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.