From 694bd79f75bc238ceb8c1edf0afbc5a8a936be59 Mon Sep 17 00:00:00 2001 From: twolaw Date: Tue, 7 Sep 2021 16:04:12 +0200 Subject: [PATCH] update trakt watched_movies list during scan --- plex_trakt_sync/trakt_api.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/plex_trakt_sync/trakt_api.py b/plex_trakt_sync/trakt_api.py index 44143a87635..09f2e220890 100644 --- a/plex_trakt_sync/trakt_api.py +++ b/plex_trakt_sync/trakt_api.py @@ -56,6 +56,7 @@ class TraktApi: def __init__(self, batch_size=None): self.batch = TraktBatch(self, batch_size=batch_size) + self._watched_movies = {} trakt.core.CONFIG_PATH = pytrakt_file trakt.core.session = factory.session() load_config() @@ -88,13 +89,14 @@ def liked_lists(self): return pytrakt_extensions.get_liked_lists() @property - @memoize @nocache @rate_limit() def watched_movies(self): - return set( - map(lambda m: m.trakt, self.me.watched_movies) - ) + if not self._watched_movies: + self._watched_movies = set( + map(lambda m: m.trakt, self.me.watched_movies) + ) + return self._watched_movies @property @memoize @@ -181,6 +183,7 @@ def scrobbler(media: Union[Movie, TVEpisode]) -> ScrobblerProxy: @time_limit() def mark_watched(self, m, time): m.mark_as_seen(time) + self._watched_movies.add(m.trakt) def add_to_collection(self, m, pm: PlexLibraryItem): if m.media_type == "movies":