aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/extractor/zdf.py
diff options
context:
space:
mode:
Diffstat (limited to 'youtube_dl/extractor/zdf.py')
-rw-r--r--youtube_dl/extractor/zdf.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/youtube_dl/extractor/zdf.py b/youtube_dl/extractor/zdf.py
index 98f15177b..c2b196504 100644
--- a/youtube_dl/extractor/zdf.py
+++ b/youtube_dl/extractor/zdf.py
@@ -70,6 +70,22 @@ def extract_from_xml_url(ie, video_id, xml_url):
'_available': is_available,
}
+ def xml_to_thumbnails(fnode):
+ thumbnails = list()
+ for node in fnode:
+ thumbnail = {'url': node.text}
+ if 'key' in node.attrib:
+ m = re.match('^([0-9]+)x([0-9]+)$', node.attrib['key'])
+ if m:
+ thumbnail['width'] = int(m.group(1))
+ thumbnail['height'] = int(m.group(2))
+ thumbnails.append(thumbnail)
+ return thumbnails
+
+
+ thumbnail_nodes = doc.findall('.//teaserimages/teaserimage')
+ thumbnails = xml_to_thumbnails(thumbnail_nodes)
+
format_nodes = doc.findall('.//formitaeten/formitaet')
formats = list(filter(
lambda f: f['_available'],
@@ -81,6 +97,7 @@ def extract_from_xml_url(ie, video_id, xml_url):
'title': title,
'description': description,
'duration': duration,
+ 'thumbnails': thumbnails,
'uploader': uploader,
'uploader_id': uploader_id,
'upload_date': upload_date,