diff options
author | Sergey M․ <dstftw@gmail.com> | 2015-10-01 23:03:31 +0600 |
---|---|---|
committer | Sergey M․ <dstftw@gmail.com> | 2015-10-01 23:03:31 +0600 |
commit | 4de6131090e0232c7cc99bcaafe6a3e71269b7af (patch) | |
tree | c8db017411890e07f75d12e314f2c744ff0c37da | |
parent | 3a1341a7bc9f11d972c7649a33e143fab72f8bc0 (diff) |
[extractor/common] Add fatal to _extract_f4m_formats
-rw-r--r-- | youtube_dl/extractor/common.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/youtube_dl/extractor/common.py b/youtube_dl/extractor/common.py index 9a5a7cc2c..c2aa3a749 100644 --- a/youtube_dl/extractor/common.py +++ b/youtube_dl/extractor/common.py @@ -870,13 +870,18 @@ class InfoExtractor(object): time.sleep(timeout) def _extract_f4m_formats(self, manifest_url, video_id, preference=None, f4m_id=None, - transform_source=lambda s: fix_xml_ampersands(s).strip()): + transform_source=lambda s: fix_xml_ampersands(s).strip(), + fatal=True): manifest = self._download_xml( manifest_url, video_id, 'Downloading f4m manifest', 'Unable to download f4m manifest', # Some manifests may be malformed, e.g. prosiebensat1 generated manifests # (see https://github.com/rg3/youtube-dl/issues/6215#issuecomment-121704244) - transform_source=transform_source) + transform_source=transform_source, + fatal=fatal) + + if manifest is False: + return manifest formats = [] manifest_version = '1.0' @@ -897,7 +902,10 @@ class InfoExtractor(object): # may differ leading to inability to resolve the format by requested # bitrate in f4m downloader if determine_ext(manifest_url) == 'f4m': - formats.extend(self._extract_f4m_formats(manifest_url, video_id, preference, f4m_id)) + f4m_formats = self._extract_f4m_formats( + manifest_url, video_id, preference, f4m_id, fatal=fatal) + if f4m_formats: + formats.extend(f4m_formats) continue tbr = int_or_none(media_el.attrib.get('bitrate')) formats.append({ |