aboutsummaryrefslogtreecommitdiff
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)
[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(