Browse Source
[extractor/common] Change the default m3u8 protocol in HTML5
Helper functions should have consistent default values
master
Yen Chi Hsuan
8 years ago
No known key found for this signature in database
GPG Key ID: 3FDDD575826C5C30
4 changed files with
8 additions and
5 deletions
-
ChangeLog
-
youtube_dl/extractor/charlierose.py
-
youtube_dl/extractor/common.py
-
youtube_dl/extractor/snotr.py
|
|
@ -7,6 +7,7 @@ Core |
|
|
|
* Fix js_to_json(): correct octal or hexadecimal number detection |
|
|
|
|
|
|
|
Extractors |
|
|
|
+ [charlierose] Add new extractor (#10382) |
|
|
|
+ [litv] Support 'promo' URLs (#10385) |
|
|
|
* [snotr] Fix extraction (#10338) |
|
|
|
* [n-tv.de] Fix extraction (#10331) |
|
|
|
|
|
@ -35,7 +35,8 @@ class CharlieRoseIE(InfoExtractor): |
|
|
|
title = remove_end(self._og_search_title(webpage), ' - Charlie Rose') |
|
|
|
|
|
|
|
info_dict = self._parse_html5_media_entries( |
|
|
|
self._PLAYER_BASE % video_id, webpage, video_id)[0] |
|
|
|
self._PLAYER_BASE % video_id, webpage, video_id, |
|
|
|
m3u8_entry_protocol='m3u8_native')[0] |
|
|
|
|
|
|
|
self._sort_formats(info_dict['formats']) |
|
|
|
self._remove_duplicate_formats(info_dict['formats']) |
|
|
|
|
|
@ -1695,7 +1695,7 @@ class InfoExtractor(object): |
|
|
|
self.report_warning('Unknown MIME type %s in DASH manifest' % mime_type) |
|
|
|
return formats |
|
|
|
|
|
|
|
def _parse_html5_media_entries(self, base_url, webpage, video_id, m3u8_id=None): |
|
|
|
def _parse_html5_media_entries(self, base_url, webpage, video_id, m3u8_id=None, m3u8_entry_protocol='m3u8'): |
|
|
|
def absolute_url(video_url): |
|
|
|
return compat_urlparse.urljoin(base_url, video_url) |
|
|
|
|
|
|
@ -1715,8 +1715,8 @@ class InfoExtractor(object): |
|
|
|
if determine_ext(full_url) == 'm3u8': |
|
|
|
is_plain_url = False |
|
|
|
formats = self._extract_m3u8_formats( |
|
|
|
full_url, video_id, ext='mp4', entry_protocol='m3u8_native', |
|
|
|
m3u8_id=m3u8_id) |
|
|
|
full_url, video_id, ext='mp4', |
|
|
|
entry_protocol=m3u8_entry_protocol, m3u8_id=m3u8_id) |
|
|
|
else: |
|
|
|
is_plain_url = True |
|
|
|
formats = [{ |
|
|
|
|
|
@ -46,7 +46,8 @@ class SnotrIE(InfoExtractor): |
|
|
|
title = self._og_search_title(webpage) |
|
|
|
|
|
|
|
description = self._og_search_description(webpage) |
|
|
|
info_dict = self._parse_html5_media_entries(url, webpage, video_id)[0] |
|
|
|
info_dict = self._parse_html5_media_entries( |
|
|
|
url, webpage, video_id, m3u8_entry_protocol='m3u8_native')[0] |
|
|
|
|
|
|
|
view_count = str_to_int(self._html_search_regex( |
|
|
|
r'<p[^>]*>\s*<strong[^>]*>Views:</strong>\s*<span[^>]*>([\d,\.]+)', |
|
|
|