From 8bbde97403c16d1d287cac345ac47ad455f7ac6a Mon Sep 17 00:00:00 2001 From: DerDestroyer Date: Thu, 1 May 2025 02:30:56 +0200 Subject: [PATCH] fixed episode number for animepahe with multiple seasons --- fastanime/libs/anime_provider/animepahe/api.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/fastanime/libs/anime_provider/animepahe/api.py b/fastanime/libs/anime_provider/animepahe/api.py index bb268d6..ddc9e95 100644 --- a/fastanime/libs/anime_provider/animepahe/api.py +++ b/fastanime/libs/anime_provider/animepahe/api.py @@ -75,13 +75,20 @@ class AnimePahe(AnimeProvider): session_id, params, page, + standardized_episode_number, ): response = self.session.get(ANIMEPAHE_ENDPOINT, params=params) response.raise_for_status() if not data: data.update(response.json()) + for episode in data.get("data", []): + episode.update({"episode": standardized_episode_number}) + standardized_episode_number += 1 else: if ep_data := response.json().get("data"): + for episode in ep_data: + episode.update({"episode": standardized_episode_number}) + standardized_episode_number += 1 data["data"].extend(ep_data) if response.json()["next_page_url"]: # TODO: Refine this @@ -107,12 +114,14 @@ class AnimePahe(AnimeProvider): "sort": "episode_asc", }, page=page, + standardized_episode_number=standardized_episode_number, ) return data @debug_provider def get_anime(self, session_id: str, **kwargs): page = 1 + standardized_episode_number = 1 if d := self.store.get(str(session_id), "search_result"): anime_result: "AnimePaheSearchResult" = d data: "AnimePaheAnimePage" = {} # pyright:ignore @@ -127,6 +136,7 @@ class AnimePahe(AnimeProvider): "page": page, }, page=page, + standardized_episode_number=standardized_episode_number, ) if not data: