From 6c05b8f92ccace22e709d84499b5219904604274 Mon Sep 17 00:00:00 2001 From: capital-G Date: Wed, 6 Sep 2017 17:57:11 +0200 Subject: [PATCH 1/7] [twitter] fixed duration --- youtube_dl/extractor/twitter.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py index 6eaf360a6..d832b26fe 100644 --- a/youtube_dl/extractor/twitter.py +++ b/youtube_dl/extractor/twitter.py @@ -229,7 +229,7 @@ class TwitterCardIE(TwitterBaseIE): title = self._search_regex(r'([^<]+)', webpage, 'title') thumbnail = config.get('posterImageUrl') or config.get('image_src') - duration = float_or_none(config.get('duration')) or duration + duration = float_or_none(config.get('duration') * 10e-4) or duration return { 'id': video_id, From fa84521ced81247770ab9af2146ba6edc64a6b2b Mon Sep 17 00:00:00 2001 From: capital-G Date: Fri, 8 Sep 2017 22:20:38 +0200 Subject: [PATCH 2/7] added check if duration is numeric --- youtube_dl/extractor/twitter.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py index d832b26fe..7324de4a5 100644 --- a/youtube_dl/extractor/twitter.py +++ b/youtube_dl/extractor/twitter.py @@ -229,7 +229,10 @@ class TwitterCardIE(TwitterBaseIE): title = self._search_regex(r'([^<]+)', webpage, 'title') thumbnail = config.get('posterImageUrl') or config.get('image_src') - duration = float_or_none(config.get('duration') * 10e-4) or duration + if config.get('duration'): + duration = float_or_none(config.get(duration)) + if duration: + duration *= 10e-4 return { 'id': video_id, From 0bd0389bcbd589c5566d8526b3cdf645e2c6c8e0 Mon Sep 17 00:00:00 2001 From: capital-G Date: Mon, 11 Sep 2017 19:22:53 +0200 Subject: [PATCH 3/7] [twitter] use fallback and scale for duration --- youtube_dl/extractor/twitter.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py index 7324de4a5..eb0e58dbf 100644 --- a/youtube_dl/extractor/twitter.py +++ b/youtube_dl/extractor/twitter.py @@ -230,9 +230,7 @@ class TwitterCardIE(TwitterBaseIE): title = self._search_regex(r'([^<]+)', webpage, 'title') thumbnail = config.get('posterImageUrl') or config.get('image_src') if config.get('duration'): - duration = float_or_none(config.get(duration)) - if duration: - duration *= 10e-4 + duration = float_or_none(config.get('duration'), scale=10e2) or duration return { 'id': video_id, From c1c13b29b5a99d8092e98ac663e4167ea3f14d42 Mon Sep 17 00:00:00 2001 From: capital-G Date: Mon, 18 Sep 2017 01:20:27 +0200 Subject: [PATCH 4/7] changed duration fallback --- youtube_dl/extractor/twitter.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py index eb0e58dbf..e9a5a0ce6 100644 --- a/youtube_dl/extractor/twitter.py +++ b/youtube_dl/extractor/twitter.py @@ -229,8 +229,7 @@ class TwitterCardIE(TwitterBaseIE): title = self._search_regex(r'([^<]+)', webpage, 'title') thumbnail = config.get('posterImageUrl') or config.get('image_src') - if config.get('duration'): - duration = float_or_none(config.get('duration'), scale=10e2) or duration + duration = float_or_none(config.get('duration'), scale=10e2) or duration return { 'id': video_id, From 7772dfd39795498dbd83de7b17a3860186eec969 Mon Sep 17 00:00:00 2001 From: capital-G Date: Tue, 19 Sep 2017 22:29:36 +0200 Subject: [PATCH 5/7] [twitter] added duration test --- youtube_dl/extractor/twitter.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py index e9a5a0ce6..5597b3d4f 100644 --- a/youtube_dl/extractor/twitter.py +++ b/youtube_dl/extractor/twitter.py @@ -368,6 +368,22 @@ class TwitterIE(InfoExtractor): 'params': { 'format': 'best[format_id^=http-]', }, + }, { + # checks for correct duration + 'url': 'https://twitter.com/SophiePassmann/status/903676793860829184', + 'md5': '0c1edf87dd3afacf7b36b5a5666c00cc', + 'info_dict': { + 'id': '903676793860829184', + 'ext': 'mp4', + 'title': 'Sophie Passmann - Schaut euch an, was ich geschickt bekommen habe 😍😍😍 #unboxing #sponsored #ad', + 'description': 'Sophie Passmann on Twitter: "Schaut euch an, was ich geschickt bekommen habe 😍😍😍 #unboxing #sponsored #ad https://t.co/jGWWxoVWYm"', + 'uploader_id': 'SophiePassmann', + 'uploader': 'Sophie Passmann', + 'duration': 107.4, + }, + 'params': { + 'skip_download': True, + }, }] def _real_extract(self, url): From b28516041a766a788cf427449953c47c1913eaa4 Mon Sep 17 00:00:00 2001 From: capital-G Date: Tue, 19 Sep 2017 22:45:41 +0200 Subject: [PATCH 6/7] [twitter] added duration to other tests --- youtube_dl/extractor/twitter.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py index 5597b3d4f..ced4ee19e 100644 --- a/youtube_dl/extractor/twitter.py +++ b/youtube_dl/extractor/twitter.py @@ -255,6 +255,7 @@ class TwitterIE(InfoExtractor): 'description': 'FREE THE NIPPLE on Twitter: "FTN supporters on Hollywood Blvd today! http://t.co/c7jHH749xJ"', 'uploader': 'FREE THE NIPPLE', 'uploader_id': 'freethenipple', + 'duration': 12.922, }, 'params': { 'skip_download': True, # requires ffmpeg @@ -305,11 +306,12 @@ class TwitterIE(InfoExtractor): 'info_dict': { 'id': '700207533655363584', 'ext': 'mp4', - 'title': 'Donte - BEAT PROD: @suhmeduh #Damndaniel', - 'description': 'Donte on Twitter: "BEAT PROD: @suhmeduh https://t.co/HBrQ4AfpvZ #Damndaniel https://t.co/byBooq2ejZ"', + 'title': 'あかさ - BEAT PROD: @suhmeduh #Damndaniel', + 'description': 'あかさ on Twitter: "BEAT PROD: @suhmeduh https://t.co/HBrQ4AfpvZ #Damndaniel https://t.co/byBooq2ejZ"', 'thumbnail': r're:^https?://.*\.jpg', - 'uploader': 'Donte', + 'uploader': 'あかさ', 'uploader_id': 'jaydingeer', + 'duration': 30.0, }, 'params': { 'skip_download': True, # requires ffmpeg @@ -337,6 +339,7 @@ class TwitterIE(InfoExtractor): 'description': 'Captain America on Twitter: "@King0fNerd Are you sure you made the right choice? Find out in theaters. https://t.co/GpgYi9xMJI"', 'uploader_id': 'captainamerica', 'uploader': 'Captain America', + 'duration': 3.17, }, 'params': { 'skip_download': True, # requires ffmpeg @@ -364,6 +367,7 @@ class TwitterIE(InfoExtractor): 'description': 'عالم الأخبار on Twitter: "كلمة تاريخية بجلسة الجناسي التاريخية.. النائب خالد مؤنس العتيبي للمعارضين : اتقوا الله .. الظلم ظلمات يوم القيامة https://t.co/xg6OhpyKfN"', 'uploader': 'عالم الأخبار', 'uploader_id': 'news_al3alm', + 'duration': 277.4, }, 'params': { 'format': 'best[format_id^=http-]', From 3b869501fbc14efa7cffbd16ce25a10614d07c9e Mon Sep 17 00:00:00 2001 From: Sergey M Date: Wed, 20 Sep 2017 03:57:22 +0700 Subject: [PATCH 7/7] Update twitter.py --- youtube_dl/extractor/twitter.py | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/youtube_dl/extractor/twitter.py b/youtube_dl/extractor/twitter.py index ced4ee19e..7399cf538 100644 --- a/youtube_dl/extractor/twitter.py +++ b/youtube_dl/extractor/twitter.py @@ -229,7 +229,7 @@ class TwitterCardIE(TwitterBaseIE): title = self._search_regex(r'([^<]+)', webpage, 'title') thumbnail = config.get('posterImageUrl') or config.get('image_src') - duration = float_or_none(config.get('duration'), scale=10e2) or duration + duration = float_or_none(config.get('duration'), scale=1000) or duration return { 'id': video_id, @@ -372,22 +372,6 @@ class TwitterIE(InfoExtractor): 'params': { 'format': 'best[format_id^=http-]', }, - }, { - # checks for correct duration - 'url': 'https://twitter.com/SophiePassmann/status/903676793860829184', - 'md5': '0c1edf87dd3afacf7b36b5a5666c00cc', - 'info_dict': { - 'id': '903676793860829184', - 'ext': 'mp4', - 'title': 'Sophie Passmann - Schaut euch an, was ich geschickt bekommen habe 😍😍😍 #unboxing #sponsored #ad', - 'description': 'Sophie Passmann on Twitter: "Schaut euch an, was ich geschickt bekommen habe 😍😍😍 #unboxing #sponsored #ad https://t.co/jGWWxoVWYm"', - 'uploader_id': 'SophiePassmann', - 'uploader': 'Sophie Passmann', - 'duration': 107.4, - }, - 'params': { - 'skip_download': True, - }, }] def _real_extract(self, url):