Taxel / PlexTraktSync

A python script that syncs the movies, shows and ratings between trakt and Plex (without needing a PlexPass or Trakt VIP subscription)
MIT License
1.62k stars 106 forks source link

Sync does no more work with new Plex Movie agent #56

Closed revog closed 3 years ago

revog commented 4 years ago

It seems like the script is no longer able to sync or scrobble anything related to movies after upgrading to the latest agent on Plex side. The new agent implementation does no more add the imdb ids to the metadata, but it does combine multiple sources (rottentomatoe, imdb, ...) to one single "plex://" item.

I'm not sure if this could be fixed on script side or whether we need to wait until Plex re-adds this imdb information. According to a Plex employee this is already in discussion: https://forums.plex.tv/t/new-plex-movie-agent-does-not-contain-imdb-info/618121/34

Until then: you guys need to switch back to "plex agent (legacy)" and re-match already matched movies again. Then you get back the guid="com.plexapp.agents.imdb://tt2140479?lang=de"metadata items.

image

ghost commented 4 years ago

With the latest beta of PMS (1.20.1.3213), the imdb and tmdb identifiers have been reintroduced to their new movie agent.

XML format:

<Guid id="imdb://tt3661394"/>
<Guid id="tmdb://508570"/>
simonc56 commented 4 years ago

Good news, now we'll have to see how the plexapi module will handle this. https://github.com/pkkid/python-plexapi/issues/534

dcbinder commented 4 years ago

Any update?

jpf4e commented 4 years ago

Any update on this?

nambrosch commented 4 years ago

@morlanth said the fix was introduced in pms 1.20.1.3213 however stable branch is on version 1.20.4.3517.

I moved back to the legacy agent to make this script work but that isn't really a solution.

ghost commented 4 years ago

See here: https://github.com/pkkid/python-plexapi/issues/557

Plex reintroduced the required identifiers which reflect their content in to the XML but these identifiers aren’t searchable through the webui when using the new agent - only the primary guid is and that can’t be used to identify the media.

What they propose is creating a lookup table from the identifiers in the XML and using that to match the content.

wampa1 commented 3 years ago

I wrote a fallback matcher but ... as I'm not a contributor (and work mostly in non open source repositories), I'm not 100% sure I know how to submit a pull request for it. Happy to contribute though if you like.

I'm also not a Python guy so ... it could use someone else's eyes on it.

I spent my whole day looking for an up to date app to sync the watched status of my Plex library (I reorganized it and everything was "unwatched" again). This was definitely the most promising and with my small update, it did work for my large library.

Let me know if you'd like my contribution.

glensc commented 3 years ago

@wampa1's contribution at https://github.com/Taxel/PlexTraktSync/pull/82

glensc commented 3 years ago

updated PR: https://github.com/Taxel/PlexTraktSync/pull/83

glensc commented 3 years ago

There appears to be PR that allows use unreleased https://github.com/pkkid/python-plexapi/pull/562:

Animosity022 commented 3 years ago

I'm assuming this still needs to be merged in to get the movies fixed?

jpf4e commented 3 years ago

@animosity22 , yes.. there's a branch with this merged I think. However other more recent features like docker support and other stuff are not there. Why not just create a develop branch with the PRs merged?

FloydKulis commented 3 years ago

The new version of Plex Server has perhaps given the missing option:

Maybe we could add it to the new scraber

\Edit: Sorry for the prefix. The number is provided by the number on the Plex.tv website

glensc commented 3 years ago

@FloydKulis edited your post to link to your information origin. unfortunately, I'm unable to find what is the #12389 issue id.

glensc commented 3 years ago

@FloydKulis not sure what you had in mind, but restored #12389 in your post, it's part of their changelog.

PS; if you edit a previous post, no notification is sent, so the "EDIT" part you typed, should had been a note.