diff options
author | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2018-01-14 00:50:11 +0100 |
---|---|---|
committer | Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> | 2018-01-14 00:50:11 +0100 |
commit | b382d0f71eeece4e6e1cc3662f3c89884d5ac05d (patch) | |
tree | e48661b9f1de2380d4bff94f416624827746abd7 /youtube_dl/extractor/anvato.py | |
parent | 5020cb7e8233683ef7845fea1233a95f3f775a7b (diff) | |
parent | a86922c4702e2c8538337124c5bf02a4b5f9aa4a (diff) | |
download | youtube-dl-b382d0f71eeece4e6e1cc3662f3c89884d5ac05d.zip youtube-dl-b382d0f71eeece4e6e1cc3662f3c89884d5ac05d.tar.gz youtube-dl-b382d0f71eeece4e6e1cc3662f3c89884d5ac05d.tar.bz2 |
Merge branch 'upstream'
Diffstat (limited to 'youtube_dl/extractor/anvato.py')
-rw-r--r-- | youtube_dl/extractor/anvato.py | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/youtube_dl/extractor/anvato.py b/youtube_dl/extractor/anvato.py index 8023da7..7a29cd2 100644 --- a/youtube_dl/extractor/anvato.py +++ b/youtube_dl/extractor/anvato.py @@ -18,6 +18,7 @@ from ..utils import ( int_or_none, strip_jsonp, unescapeHTML, + unsmuggle_url, ) @@ -197,12 +198,16 @@ class AnvatoIE(InfoExtractor): 'tbr': tbr if tbr != 0 else None, } - if ext == 'm3u8' or media_format in ('m3u8', 'm3u8-variant'): - if tbr is not None: - a_format.update({ - 'format_id': '-'.join(filter(None, ['hls', compat_str(tbr)])), - 'ext': 'mp4', - }) + if media_format == 'm3u8' and tbr is not None: + a_format.update({ + 'format_id': '-'.join(filter(None, ['hls', compat_str(tbr)])), + 'ext': 'mp4', + }) + elif media_format == 'm3u8-variant' or ext == 'm3u8': + formats.extend(self._extract_m3u8_formats( + video_url, video_id, 'mp4', entry_protocol='m3u8_native', + m3u8_id='hls', fatal=False)) + continue elif ext == 'mp3' or media_format == 'mp3': a_format['vcodec'] = 'none' else: @@ -271,6 +276,9 @@ class AnvatoIE(InfoExtractor): anvplayer_data['accessKey'], anvplayer_data['video']) def _real_extract(self, url): + url, smuggled_data = unsmuggle_url(url, {}) + self._initialize_geo_bypass(smuggled_data.get('geo_countries')) + mobj = re.match(self._VALID_URL, url) access_key, video_id = mobj.group('access_key_or_mcp', 'id') if access_key not in self._ANVACK_TABLE: |