Browse Source

[9now] Fix extraction (closes #22361)

Sergey M․ 6 years ago
parent
commit
6fd26a7d4a
1 changed files with 5 additions and 1 deletions
  1. 5 1
      youtube_dl/extractor/ninenow.py

+ 5 - 1
youtube_dl/extractor/ninenow.py

@@ -45,7 +45,11 @@ class NineNowIE(InfoExtractor):
         webpage = self._download_webpage(url, display_id)
         page_data = self._parse_json(self._search_regex(
             r'window\.__data\s*=\s*({.*?});', webpage,
-            'page data'), display_id)
+            'page data', default='{}'), display_id, fatal=False)
+        if not page_data:
+            page_data = self._parse_json(self._parse_json(self._search_regex(
+                r'window\.__data\s*=\s*JSON\.parse\s*\(\s*(".+?")\s*\)\s*;',
+                webpage, 'page data'), display_id), display_id)
 
         for kind in ('episode', 'clip'):
             current_key = page_data.get(kind, {}).get(