From ce9072124de66bf1903701a815631b324af0bc72 Mon Sep 17 00:00:00 2001 From: pierre geeraert Date: Wed, 24 Jun 2026 23:25:38 +0100 Subject: [PATCH] add quite some betaserie work --- django_code/apps/betaserie/utils.py | 101 ++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 django_code/apps/betaserie/utils.py diff --git a/django_code/apps/betaserie/utils.py b/django_code/apps/betaserie/utils.py new file mode 100644 index 0000000..86cf274 --- /dev/null +++ b/django_code/apps/betaserie/utils.py @@ -0,0 +1,101 @@ +import requests +import hashlib +from apps.bitwarden.utils import bitwardenUtils + +class betaserieUtils(): + url = "https://api.betaseries.com/members/auth" + + username_UID="7bc7ebd2-9c95-487f-9ba2-b47301591ef0" + password_UID="262c3246-203b-44e0-854b-b47301599730" + token_UID="2cf4be0f-f26f-473f-b8f1-b473016139e4" + + #Adding __ to make the variable private and can't be access outside the class, + # only by the class itself ot the subclass + + __access_token = "0.7720f24b-4328-41ef-b70b-b419018270a3.nhBoRMSkfrlxqJVZ9W0W1g3lNFrmfI:35muVQz2mO3coR46bIZgcQ==" + __organization_id = "a6361589-badd-4bde-9cb4-af8901161c0d" + + bw = bitwardenUtils(__access_token,__organization_id) + + __betaserie_username = bw.read_value_secret(username_UID) + __betaserie_md5_password = bw.read_value_secret(password_UID) + __betaserie_token = bw.read_value_secret(token_UID) + + payload = { + 'login': __betaserie_username, # username or email + 'password': __betaserie_md5_password # MD5 hashed password + } + + headers = { + 'X-BetaSeries-Key': __betaserie_token, + 'X-BetaSeries-Token': __betaserie_token + } + + #response = requests.post(url, headers=headers, data=payload) + response = 0 + # __betaserie_hash = response.json()['hash'] + + def status_code(self): + print("Status code:", self.response.status_code) + print("Response:", self.response.json()) + + + + + + def identify_serie(self,serie_name,verbose=False): + # + # Usage + # show_id = beta.identify_serie("The simpsons") + # show_id = beta.identify_serie("The simpsons",verbose=True) + # + url = "https://api.betaseries.com/shows/search?title="+serie_name + payload = {} + + response = requests.request("GET", url, headers=self.headers, data=payload) + if verbose: + print("Url request: "+str(url)) + print(response.text) + + show_id = response.json()['shows'][0]['id'] + + return show_id + + def identify_episode(self,show_id,episode_number,verbose=False): + # + # Usage + # episode_id = beta.identify_episode(show_id,"S01E01",True) + # + url = "https://api.betaseries.com/episodes/search?show_id="+str(show_id)+"&number="+str(episode_number) + + payload = {} + headers = { + 'X-BetaSeries-Key': self.__betaserie_token, + 'X-BetaSeries-Token': self.__betaserie_token + } + + response = requests.request("GET", url, headers=headers, data=payload) + + episode_id = response.json()['episode']['id'] + if verbose: + print("Url request: "+str(url)) + print(response) + + return episode_id + + def mark_episodes_watched(self,episode_id,verbose=False): + + url = "https://api.betaseries.com/episodes/watched?id=episode_id" + + payload = {} + headers = { + 'X-BetaSeries-Key': self.__betaserie_token, + 'X-BetaSeries-Token': self.__betaserie_token + } + + response = requests.request("POST", url, headers=headers, data=payload) + if verbose: + print("Url request: "+str(url)) + print(response) + + print(response.text) \ No newline at end of file