diff --git a/packages/envied/pyproject.toml b/packages/envied/pyproject.toml index 4539a24..6cee6da 100644 --- a/packages/envied/pyproject.toml +++ b/packages/envied/pyproject.toml @@ -71,7 +71,7 @@ dependencies = [ "webvtt-py>=0.5.1,<0.6", "isodate>=0.7.2,<0.8", "scrapy>=2.14.0,<3", - "mypy>=1.19.1,<2", + "mypy>=1.19.1,<=2.1.0", "httpx>=0.28.0,<0.35", diff --git a/packages/envied/src/envied/services/TPTV/__init__.py b/packages/envied/src/envied/services/TPTV/__init__.py index 50bc8e9..be85a08 100644 --- a/packages/envied/src/envied/services/TPTV/__init__.py +++ b/packages/envied/src/envied/services/TPTV/__init__.py @@ -116,12 +116,10 @@ class TPTV(Service): cache = self.cache.get(f"tokens_{credential.sha1}") # first contact fc_headers = { - 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0', + 'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64; rv:135.0) Gecko/20100101 Firefox/151.0', 'Accept': '*/*', 'Accept-Language': 'en-GB,en;q=0.5', 'api-key': 'zq5pyPd0RTbNg3Fyj52PrkKL9c2Af38HHh4itgZTKDaCzjAyhd', - 'Referer': 'https://tptvencore.co.uk/', - 'tenant': 'encore', 'Content-Type': 'application/json', 'Origin': 'https://tptvencore.co.uk', 'DNT': '1', @@ -132,13 +130,15 @@ class TPTV(Service): 'Priority': 'u=0', } - payload = {} - r = self.session.post(self.config["endpoints"]["session"], headers=fc_headers, json=payload) + + + r = self.session.get(self.config["endpoints"]["initial"], headers=fc_headers) if r.status_code != 200: raise ConnectionError else: - session_id = r.json()['id'] - self.session.headers.update({'session': session_id}) + headers = r.headers + self.session.headers.update({'session': headers.get('session')}) + # login if cache and not cache.expired: diff --git a/packages/envied/src/envied/services/TPTV/config.yaml b/packages/envied/src/envied/services/TPTV/config.yaml index 6d35e9c..03b1c39 100644 --- a/packages/envied/src/envied/services/TPTV/config.yaml +++ b/packages/envied/src/envied/services/TPTV/config.yaml @@ -2,8 +2,6 @@ headers: User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0 Accept: '*/*' Accept-Language: en-GBen;q=0.5 - Access-Control-Request-Method: POST - Access-Control-Request-Headers: baggagecontent-typesentry-tracesessiontenant Referer: https://tptvencore.co.uk/ Origin: https://tptvencore.co.uk DNT: '1' @@ -17,7 +15,8 @@ session: api-key: zq5pyPd0RTbNg3Fyj52PrkKL9c2Af38HHh4itgZTKDaCzjAyhd endpoints: + initial: https://tptvencore.co.uk/ login: https://tptvencore.co.uk/api/core/auth/login?locale=en - session: https://prod.suggestedtv.com/api/client/v1/session - search: https://tptvencore.co.uk/api/core/search?q={query} + session: https://tptvencore.co.uk/api/core/hello?locale=en + search: https://tptvencore.co.uk/api/core/search?q={query}&page=1&pageSize=20&locale=en diff --git a/packages/vinefeeder/src/vinefeeder/services/TPTV/__init__.py b/packages/vinefeeder/src/vinefeeder/services/TPTV/__init__.py index be9d1c3..d8f8b7c 100644 --- a/packages/vinefeeder/src/vinefeeder/services/TPTV/__init__.py +++ b/packages/vinefeeder/src/vinefeeder/services/TPTV/__init__.py @@ -48,11 +48,13 @@ class TptvLoader(BaseLoader): } super().__init__(headers) payload = {} - r = self.post_data("https://prod.suggestedtv.com/api/client/v1/session", json=payload, headers=headers) + r = self.client.get("https://tptvencore.co.uk/", headers=headers) if r.status_code != 200: raise ConnectionError else: - self.session_id = r.json()['id'] + #headers = r.headers + #self.client.headers.update({'headers': headers.get('headers')}) + pass def receive( @@ -153,9 +155,7 @@ class TptvLoader(BaseLoader): get_headers = suggested_headers.copy() get_headers['Access-Control-Request-Headers'] = 'session,tenant' - get_headers['Access-Control-Request-Method'] = 'GET' - get_headers['session'] = self.session_id - #get_headers['tenant'] = 'encore' + get_headers['Access-Control-Request-Method'] = 'GET' response = self.get_data(suggested_url, headers=get_headers) myjson = json.loads(response) diff --git a/uv.lock b/uv.lock index f5ca820..846680f 100644 --- a/uv.lock +++ b/uv.lock @@ -774,7 +774,7 @@ requires-dist = [ { name = "langcodes", specifier = ">=3.4.0,<4" }, { name = "language-data", specifier = ">=1.4.0" }, { name = "lxml", specifier = ">=5.2.1,<7" }, - { name = "mypy", specifier = ">=1.19.1,<2" }, + { name = "mypy", specifier = ">=1.19.1,<=2.1.0" }, { name = "protobuf", specifier = ">=4.25.3,<7" }, { name = "pycaption", specifier = ">=2.2.6,<3" }, { name = "pycountry", specifier = ">=24.6.1" },