summary refs log tree commit diff
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2019-09-19 02:31:39 +0700
committerSergey M․ <dstftw@gmail.com>2019-09-19 02:31:39 +0700
commit6fd26a7d4a851b260c56974d77911804c09ff816 (patch)
treea6e5681bc355b65ae037077fc6760e60a0e86818
parent9cf26b6e1d0658eb0b252872ef011d765b8341a5 (diff)
downloadyoutube-dl-6fd26a7d4a851b260c56974d77911804c09ff816.tar.gz
youtube-dl-6fd26a7d4a851b260c56974d77911804c09ff816.tar.xz
youtube-dl-6fd26a7d4a851b260c56974d77911804c09ff816.zip
[9now] Fix extraction (closes #22361)
-rw-r--r--youtube_dl/extractor/ninenow.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/youtube_dl/extractor/ninenow.py b/youtube_dl/extractor/ninenow.py
index f32f530f7..6157dc7c1 100644
--- a/youtube_dl/extractor/ninenow.py
+++ b/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(