From 5b72f5b74fb144afb9001d43be34e34ad8fbb39e Mon Sep 17 00:00:00 2001 From: Remita Amine Date: Mon, 21 Dec 2020 09:02:45 +0100 Subject: [PATCH] [anvato] remove NFLTokenGenerator until a better solution is introduced that: - works with lazy_extractors - allows for 3rd party token generators --- youtube_dl/extractor/anvato.py | 14 ++------- .../anvato_token_generator/__init__.py | 7 ----- .../anvato_token_generator/common.py | 6 ---- .../extractor/anvato_token_generator/nfl.py | 30 ------------------- 4 files changed, 3 insertions(+), 54 deletions(-) delete mode 100644 youtube_dl/extractor/anvato_token_generator/__init__.py delete mode 100644 youtube_dl/extractor/anvato_token_generator/common.py delete mode 100644 youtube_dl/extractor/anvato_token_generator/nfl.py diff --git a/youtube_dl/extractor/anvato.py b/youtube_dl/extractor/anvato.py index 98c5e6d38..b7398563b 100644 --- a/youtube_dl/extractor/anvato.py +++ b/youtube_dl/extractor/anvato.py @@ -9,7 +9,6 @@ import re import time from .common import InfoExtractor -# from .anvato_token_generator import NFLTokenGenerator from ..aes import aes_encrypt from ..compat import compat_str from ..utils import ( @@ -204,10 +203,6 @@ class AnvatoIE(InfoExtractor): 'telemundo': 'anvato_mcp_telemundo_web_prod_c5278d51ad46fda4b6ca3d0ea44a7846a054f582' } - _TOKEN_GENERATORS = { - # 'GXvEgwyJeWem8KCYXfeoHWknwP48Mboj': NFLTokenGenerator, - } - _API_KEY = '3hwbSuqqT690uxjNYBktSQpa5ZrpYYR0Iofx7NcJHyA' _ANVP_RE = r']+\bdata-anvp\s*=\s*(["\'])(?P(?:(?!\1).)+)\1' @@ -267,12 +262,9 @@ class AnvatoIE(InfoExtractor): 'anvrid': anvrid, 'anvts': server_time, } - if access_key in self._TOKEN_GENERATORS: - api['anvstk2'] = self._TOKEN_GENERATORS[access_key].generate(self, access_key, video_id) - else: - api['anvstk'] = md5_text('%s|%s|%d|%s' % ( - access_key, anvrid, server_time, - self._ANVACK_TABLE.get(access_key, self._API_KEY))) + api['anvstk'] = md5_text('%s|%s|%d|%s' % ( + access_key, anvrid, server_time, + self._ANVACK_TABLE.get(access_key, self._API_KEY))) return self._download_json( video_data_url, video_id, transform_source=strip_jsonp, diff --git a/youtube_dl/extractor/anvato_token_generator/__init__.py b/youtube_dl/extractor/anvato_token_generator/__init__.py deleted file mode 100644 index 6e223db9f..000000000 --- a/youtube_dl/extractor/anvato_token_generator/__init__.py +++ /dev/null @@ -1,7 +0,0 @@ -from __future__ import unicode_literals - -from .nfl import NFLTokenGenerator - -__all__ = [ - 'NFLTokenGenerator', -] diff --git a/youtube_dl/extractor/anvato_token_generator/common.py b/youtube_dl/extractor/anvato_token_generator/common.py deleted file mode 100644 index b959a903b..000000000 --- a/youtube_dl/extractor/anvato_token_generator/common.py +++ /dev/null @@ -1,6 +0,0 @@ -from __future__ import unicode_literals - - -class TokenGenerator: - def generate(self, anvack, mcp_id): - raise NotImplementedError('This method must be implemented by subclasses') diff --git a/youtube_dl/extractor/anvato_token_generator/nfl.py b/youtube_dl/extractor/anvato_token_generator/nfl.py deleted file mode 100644 index 97a2b245f..000000000 --- a/youtube_dl/extractor/anvato_token_generator/nfl.py +++ /dev/null @@ -1,30 +0,0 @@ -from __future__ import unicode_literals - -import json - -from .common import TokenGenerator - - -class NFLTokenGenerator(TokenGenerator): - _AUTHORIZATION = None - - def generate(ie, anvack, mcp_id): - if not NFLTokenGenerator._AUTHORIZATION: - reroute = ie._download_json( - 'https://api.nfl.com/v1/reroute', mcp_id, - data=b'grant_type=client_credentials', - headers={'X-Domain-Id': 100}) - NFLTokenGenerator._AUTHORIZATION = '%s %s' % (reroute.get('token_type') or 'Bearer', reroute['access_token']) - return ie._download_json( - 'https://api.nfl.com/v3/shield/', mcp_id, data=json.dumps({ - 'query': '''{ - viewer { - mediaToken(anvack: "%s", id: %s) { - token - } - } -}''' % (anvack, mcp_id), - }).encode(), headers={ - 'Authorization': NFLTokenGenerator._AUTHORIZATION, - 'Content-Type': 'application/json', - })['data']['viewer']['mediaToken']['token']