diff --git a/scanner/providers/implementations/thexem.py b/scanner/providers/implementations/thexem.py index a87cc67a..474dd549 100644 --- a/scanner/providers/implementations/thexem.py +++ b/scanner/providers/implementations/thexem.py @@ -5,13 +5,13 @@ from logging import getLogger from datetime import timedelta from typing import Optional -from providers.provider import Provider -from providers.utils import ProviderError -from providers.types.collection import Collection -from providers.types.movie import Movie -from providers.types.show import Show -from providers.types.season import Season -from providers.types.episode import Episode +from ..provider import Provider +from ..utils import ProviderError +from ..types.collection import Collection +from ..types.movie import Movie +from ..types.show import Show +from ..types.season import Season +from ..types.episode import Episode from matcher.cache import cache logger = getLogger(__name__) @@ -172,7 +172,8 @@ class TheXem(Provider): @property def name(self) -> str: - return "TheXem" + # Use the base name for id lookup on the matcher. + return self._base.name async def get_expected_titles(self) -> list[str]: return await self._client.get_expected_titles() diff --git a/scanner/providers/provider.py b/scanner/providers/provider.py index 89390276..ab25bf85 100644 --- a/scanner/providers/provider.py +++ b/scanner/providers/provider.py @@ -3,7 +3,6 @@ from aiohttp import ClientSession from abc import abstractmethod, abstractproperty from typing import Optional -from providers.implementations.thexem import TheXem from providers.utils import ProviderError from .types.show import Show @@ -35,6 +34,8 @@ class Provider: "No provider configured. You probably forgot to specify an API Key" ) + from providers.implementations.thexem import TheXem + provider = next(iter(providers)) return TheXem(client, provider) @@ -70,7 +71,9 @@ class Provider: raise NotImplementedError @abstractmethod - async def identify_episode(self, show_id: str, season: Optional[int], episode_nbr: int, absolute: int) -> Episode: + async def identify_episode( + self, show_id: str, season: Optional[int], episode_nbr: int, absolute: int + ) -> Episode: raise NotImplementedError @abstractmethod