aboutsummaryrefslogtreecommitdiffstats
path: root/yt_dlp/extractor/aparat.py
diff options
context:
space:
mode:
authorJesús <heckyel@hyperbola.info>2022-02-05 10:48:13 -0500
committerJesús <heckyel@hyperbola.info>2022-02-05 10:48:13 -0500
commitc4b763b19f54ed5dfc2fd408adb9ed74126f6740 (patch)
tree1bbf4450644370608f97bf6d4d7db818c5039f55 /yt_dlp/extractor/aparat.py
parent5aac4e0267e32d98eb68692afedafda3b41ea629 (diff)
parenta3125791c7a5cdf2c8c025b99788bf686edd1a8a (diff)
downloadhypervideo-pre-c4b763b19f54ed5dfc2fd408adb9ed74126f6740.tar.lz
hypervideo-pre-c4b763b19f54ed5dfc2fd408adb9ed74126f6740.tar.xz
hypervideo-pre-c4b763b19f54ed5dfc2fd408adb9ed74126f6740.zip
updated from upstream | 05/02/2022 at 10:48
Diffstat (limited to 'yt_dlp/extractor/aparat.py')
-rw-r--r--yt_dlp/extractor/aparat.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/yt_dlp/extractor/aparat.py b/yt_dlp/extractor/aparat.py
index da06a3cac..1057233cf 100644
--- a/yt_dlp/extractor/aparat.py
+++ b/yt_dlp/extractor/aparat.py
@@ -33,19 +33,22 @@ class AparatIE(InfoExtractor):
'only_matching': True,
}]
+ def _parse_options(self, webpage, video_id, fatal=True):
+ return self._parse_json(self._search_regex(
+ r'options\s*=\s*({.+?})\s*;', webpage, 'options', default='{}'), video_id)
+
def _real_extract(self, url):
video_id = self._match_id(url)
- # Provides more metadata
+ # If available, provides more metadata
webpage = self._download_webpage(url, video_id, fatal=False)
+ options = self._parse_options(webpage, video_id, fatal=False)
- if not webpage:
+ if not options:
webpage = self._download_webpage(
'http://www.aparat.com/video/video/embed/vt/frame/showvideo/yes/videohash/' + video_id,
- video_id)
-
- options = self._parse_json(self._search_regex(
- r'options\s*=\s*({.+?})\s*;', webpage, 'options'), video_id)
+ video_id, 'Downloading embed webpage')
+ options = self._parse_options(webpage, video_id)
formats = []
for sources in (options.get('multiSRC') or []):