diff --git a/scanner/providers/implementations/themoviedatabase.py b/scanner/providers/implementations/themoviedatabase.py index 1e385950..948401ce 100644 --- a/scanner/providers/implementations/themoviedatabase.py +++ b/scanner/providers/implementations/themoviedatabase.py @@ -306,6 +306,7 @@ class TheMovieDatabase(Provider): season: Optional[int], episode_nbr: Optional[int], absolute: Optional[int], + year: Optional[int], *, language: list[str], ) -> Episode: diff --git a/scanner/providers/provider.py b/scanner/providers/provider.py index 9c18722b..8d6e4dd0 100644 --- a/scanner/providers/provider.py +++ b/scanner/providers/provider.py @@ -52,6 +52,7 @@ class Provider: season: Optional[int], episode_nbr: Optional[int], absolute: Optional[int], + year: Optional[int], *, language: list[str] ) -> Episode: diff --git a/scanner/scanner/scanner.py b/scanner/scanner/scanner.py index e2fa9c14..513a9713 100644 --- a/scanner/scanner/scanner.py +++ b/scanner/scanner/scanner.py @@ -77,6 +77,9 @@ class Scanner: if not "mimetype" in raw or not raw["mimetype"].startswith("video"): return + # Remove seasons in "One Piece (1999) 152.mkv" for example + if raw.get("season") == raw.get("year") and "season" in raw: + del raw["season"] logging.info("Identied %s: %s", path, raw) @@ -94,6 +97,7 @@ class Scanner: season=raw.get("season"), episode_nbr=raw.get("episode"), absolute=raw.get("episode") if "season" not in raw else None, + year=raw.get("year"), language=self.languages, ) episode.path = str(path)