summary refs log tree commit diff
diff options
context:
space:
mode:
authorYen Chi Hsuan <yan12125@gmail.com>2016-02-21 17:16:35 +0800
committerYen Chi Hsuan <yan12125@gmail.com>2016-02-21 17:16:35 +0800
commitbdbf4ba40ebae986ddf65fd1da4741af9ddf3ec9 (patch)
tree6bcd7fab51e95404abea4306c44c3430e1c28a54
parentacb6e97e6a039b7bcce952e9fcf71a5ccf92aec3 (diff)
downloadyoutube-dl-bdbf4ba40ebae986ddf65fd1da4741af9ddf3ec9.tar.gz
youtube-dl-bdbf4ba40ebae986ddf65fd1da4741af9ddf3ec9.tar.xz
youtube-dl-bdbf4ba40ebae986ddf65fd1da4741af9ddf3ec9.zip
[twitter:amplify] Extract more metadata
-rw-r--r--youtube_dl/extractor/twitter.py30
1 files changed, 29 insertions, 1 deletions
diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py
index 64c429f02..29ce84f5e 100644
--- a/youtube_dl/extractor/twitter.py
+++ b/youtube_dl/extractor/twitter.py
@@ -243,6 +243,7 @@ class TwitterAmplifyIE(TwitterBaseIE):
             'id': '0ba0c3c7-0af3-4c0a-bed5-7efd1ffa2951',
             'ext': 'mp4',
             'title': 'Twitter Video',
+            'thumbnail': 're:^https?://.*',
         },
     }
 
@@ -254,8 +255,35 @@ class TwitterAmplifyIE(TwitterBaseIE):
             'twitter:amplify:vmap', webpage, 'vmap url')
         video_url = self._get_vmap_video_url(vmap_url, video_id)
 
+        thumbnails = []
+        thumbnail = self._html_search_meta(
+            'twitter:image:src', webpage, 'thumbnail', fatal=False)
+
+        def _find_dimension(target):
+            w = int_or_none(self._html_search_meta(
+                'twitter:%s:width' % target, webpage, fatal=False))
+            h = int_or_none(self._html_search_meta(
+                'twitter:%s:height' % target, webpage, fatal=False))
+            return w, h
+
+        if thumbnail:
+            thumbnail_w, thumbnail_h = _find_dimension('image')
+            thumbnails.append({
+                'url': thumbnail,
+                'width': thumbnail_w,
+                'height': thumbnail_h,
+            })
+
+        video_w, video_h = _find_dimension('player')
+        formats = [{
+            'url': video_url,
+            'width': video_w,
+            'height': video_h,
+        }]
+
         return {
             'id': video_id,
             'title': 'Twitter Video',
-            'url': video_url,
+            'formats': formats,
+            'thumbnails': thumbnails,
         }