commit: 5b72f5b74fb144afb9001d43be34e34ad8fbb39e
parent bfa345744d055b2420f82336b339a51a9d73b28a
Author: Remita Amine <remitamine@gmail.com>
Date: Mon, 21 Dec 2020 09:02:45 +0100
[anvato] remove NFLTokenGenerator
until a better solution is introduced that:
- works with lazy_extractors
- allows for 3rd party token generators
Diffstat:
4 files changed, 3 insertions(+), 54 deletions(-)
diff --git 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'<script[^>]+\bdata-anvp\s*=\s*(["\'])(?P<anvp>(?:(?!\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
@@ -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
@@ -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
@@ -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']