diff options
Diffstat (limited to 'youtube_dl/extractor/awaan.py')
| -rw-r--r-- | youtube_dl/extractor/awaan.py | 63 | 
1 files changed, 24 insertions, 39 deletions
diff --git a/youtube_dl/extractor/awaan.py b/youtube_dl/extractor/awaan.py index bdf23c6a9..66d7515bc 100644 --- a/youtube_dl/extractor/awaan.py +++ b/youtube_dl/extractor/awaan.py @@ -50,25 +50,6 @@ class AWAANBaseIE(InfoExtractor):              'is_live': is_live,          } -    def _extract_video_formats(self, webpage, video_id, m3u8_entry_protocol): -        formats = [] -        format_url_base = 'http' + self._html_search_regex( -            [ -                r'file\s*:\s*"https?(://[^"]+)/playlist.m3u8', -                r'<a[^>]+href="rtsp(://[^"]+)"' -            ], webpage, 'format url') -        formats.extend(self._extract_mpd_formats( -            format_url_base + '/manifest.mpd', -            video_id, mpd_id='dash', fatal=False)) -        formats.extend(self._extract_m3u8_formats( -            format_url_base + '/playlist.m3u8', video_id, 'mp4', -            m3u8_entry_protocol, m3u8_id='hls', fatal=False)) -        formats.extend(self._extract_f4m_formats( -            format_url_base + '/manifest.f4m', -            video_id, f4m_id='hds', fatal=False)) -        self._sort_formats(formats) -        return formats -  class AWAANVideoIE(AWAANBaseIE):      IE_NAME = 'awaan:video' @@ -99,16 +80,18 @@ class AWAANVideoIE(AWAANBaseIE):              video_id, headers={'Origin': 'http://awaan.ae'})          info = self._parse_video_data(video_data, video_id, False) -        webpage = self._download_webpage( -            'http://admin.mangomolo.com/analytics/index.php/customers/embed/video?' + -            compat_urllib_parse_urlencode({ -                'id': video_data['id'], -                'user_id': video_data['user_id'], -                'signature': video_data['signature'], -                'countries': 'Q0M=', -                'filter': 'DENY', -            }), video_id) -        info['formats'] = self._extract_video_formats(webpage, video_id, 'm3u8_native') +        embed_url = 'http://admin.mangomolo.com/analytics/index.php/customers/embed/video?' + compat_urllib_parse_urlencode({ +            'id': video_data['id'], +            'user_id': video_data['user_id'], +            'signature': video_data['signature'], +            'countries': 'Q0M=', +            'filter': 'DENY', +        }) +        info.update({ +            '_type': 'url_transparent', +            'url': embed_url, +            'ie_key': 'MangomoloVideo', +        })          return info @@ -138,16 +121,18 @@ class AWAANLiveIE(AWAANBaseIE):              channel_id, headers={'Origin': 'http://awaan.ae'})          info = self._parse_video_data(channel_data, channel_id, True) -        webpage = self._download_webpage( -            'http://admin.mangomolo.com/analytics/index.php/customers/embed/index?' + -            compat_urllib_parse_urlencode({ -                'id': base64.b64encode(channel_data['user_id'].encode()).decode(), -                'channelid': base64.b64encode(channel_data['id'].encode()).decode(), -                'signature': channel_data['signature'], -                'countries': 'Q0M=', -                'filter': 'DENY', -            }), channel_id) -        info['formats'] = self._extract_video_formats(webpage, channel_id, 'm3u8') +        embed_url = 'http://admin.mangomolo.com/analytics/index.php/customers/embed/index?' + compat_urllib_parse_urlencode({ +            'id': base64.b64encode(channel_data['user_id'].encode()).decode(), +            'channelid': base64.b64encode(channel_data['id'].encode()).decode(), +            'signature': channel_data['signature'], +            'countries': 'Q0M=', +            'filter': 'DENY', +        }) +        info.update({ +            '_type': 'url_transparent', +            'url': embed_url, +            'ie_key': 'MangomoloLive', +        })          return info  | 
