aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog1
-rw-r--r--youtube_dl/extractor/charlierose.py3
-rw-r--r--youtube_dl/extractor/common.py6
-rw-r--r--youtube_dl/extractor/snotr.py3
4 files changed, 8 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index a8d8d05a3..383ff59ea 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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)
diff --git a/youtube_dl/extractor/charlierose.py b/youtube_dl/extractor/charlierose.py
index 817f7128f..4bf2cf7b0 100644
--- a/youtube_dl/extractor/charlierose.py
+++ b/youtube_dl/extractor/charlierose.py
@@ -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'])
diff --git a/youtube_dl/extractor/common.py b/youtube_dl/extractor/common.py
index 07d58afe7..ba4c03d3d 100644
--- a/youtube_dl/extractor/common.py
+++ b/youtube_dl/extractor/common.py
@@ -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 = [{
diff --git a/youtube_dl/extractor/snotr.py b/youtube_dl/extractor/snotr.py
index 3bb78cb84..4819fe5b4 100644
--- a/youtube_dl/extractor/snotr.py
+++ b/youtube_dl/extractor/snotr.py
@@ -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,\.]+)',