]> jfr.im git - yt-dlp.git/commitdiff
[anvato] Workaround for anvato_token_generator import failing (Closes #35)
authorpukkandan <redacted>
Thu, 28 Jan 2021 10:15:32 +0000 (15:45 +0530)
committerpukkandan <redacted>
Thu, 28 Jan 2021 10:27:37 +0000 (15:57 +0530)
:ci skip dl

youtube_dlc/extractor/anvato.py

index a6410311c598fc332705de33ada5e7f69a08ab5e..9b38676059098a81efb86d8ed5a422d5c1bca0e0 100644 (file)
@@ -9,7 +9,6 @@
 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 (
     unsmuggle_url,
 )
 
+# This import causes a ModuleNotFoundError on some systems for unknown reason.
+# See issues:
+# https://github.com/pukkandan/yt-dlp/issues/35
+# https://github.com/ytdl-org/youtube-dl/issues/27449
+# https://github.com/animelover1984/youtube-dl/issues/17
+try:
+    from .anvato_token_generator import NFLTokenGenerator
+except ImportError:
+    NFLTokenGenerator = None
 
 def md5_text(s):
     if not isinstance(s, compat_str):
@@ -267,7 +275,7 @@ def _get_video_json(self, access_key, video_id):
             'anvrid': anvrid,
             'anvts': server_time,
         }
-        if access_key in self._TOKEN_GENERATORS:
+        if self._TOKEN_GENERATORS.get(access_key) is not None:
             api['anvstk2'] = self._TOKEN_GENERATORS[access_key].generate(self, access_key, video_id)
         else:
             api['anvstk'] = md5_text('%s|%s|%d|%s' % (