From 7f90f69cbf61ac0f1346a23cdd0ea1753a674748 Mon Sep 17 00:00:00 2001 From: VineFeeder Date: Sat, 11 Apr 2026 10:49:35 +0100 Subject: [PATCH] CBC service --- packages/envied/src/envied/services/CBC/__init__.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/envied/src/envied/services/CBC/__init__.py b/packages/envied/src/envied/services/CBC/__init__.py index d84ac0b..3bfe4fb 100644 --- a/packages/envied/src/envied/services/CBC/__init__.py +++ b/packages/envied/src/envied/services/CBC/__init__.py @@ -156,7 +156,9 @@ class CBC(Service): if label in ("film", "movie", "standalone"): movies: list[Movie] = self._movie(data) return Movies(movies) - + elif label in ("parts"): + episodes: list[Episode] = self._show(data) + return Series(episodes) else: episodes: list[Episode] = self._show(data) return Series(episodes) @@ -229,6 +231,12 @@ class CBC(Service): def _show(self, data: dict) -> list[Episode]: lineups: list = next((x["lineups"] for x in data["content"] if x.get("title", "").lower() == "episodes"), None) + if not lineups: + try: + lineups = next(x["lineups"] for x in data["content"] if x.get("title", "").lower() == "parts") + except StopIteration: + pass + if not lineups: self.log.warning("No episodes found for: {}".format(data.get("title"))) return