From 87a265d820fbf9e3ce47c149609100fc8e9e13c5 Mon Sep 17 00:00:00 2001 From: Emi Date: Sat, 3 Jan 2026 15:54:29 -0500 Subject: [PATCH] [ie/tumblr] Extract timestamp (#15462) Authored by: alch-emi --- yt_dlp/extractor/tumblr.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/yt_dlp/extractor/tumblr.py b/yt_dlp/extractor/tumblr.py index 1f2c9b19ca..51cdc303f2 100644 --- a/yt_dlp/extractor/tumblr.py +++ b/yt_dlp/extractor/tumblr.py @@ -20,6 +20,8 @@ class TumblrIE(InfoExtractor): 'id': '54196191430', 'ext': 'mp4', 'title': 'md5:dfac39636969fe6bf1caa2d50405f069', + 'timestamp': 1372531260, + 'upload_date': '20130629', 'description': 'md5:390ab77358960235b6937ab3b8528956', 'uploader_id': 'tatianamaslanydaily', 'uploader_url': 'https://tatianamaslanydaily.tumblr.com/', @@ -39,6 +41,8 @@ class TumblrIE(InfoExtractor): 'ext': 'mp4', 'title': 'Mona\xa0“talking” in\xa0“english”', 'description': 'md5:082a3a621530cb786ad2b7592a6d9e2c', + 'timestamp': 1597865276, + 'upload_date': '20200819', 'uploader_id': 'maskofthedragon', 'uploader_url': 'https://maskofthedragon.tumblr.com/', 'thumbnail': r're:^https?://.*\.jpg', @@ -76,6 +80,8 @@ class TumblrIE(InfoExtractor): 'id': '159704441298', 'ext': 'mp4', 'title': 'md5:ba79365861101f4911452728d2950561', + 'timestamp': 1492489550, + 'upload_date': '20170418', 'description': 'md5:773738196cea76b6996ec71e285bdabc', 'uploader_id': 'jujanon', 'uploader_url': 'https://jujanon.tumblr.com/', @@ -93,6 +99,8 @@ class TumblrIE(InfoExtractor): 'id': '180294460076', 'ext': 'mp4', 'title': 'duality of bird', + 'timestamp': 1542651819, + 'upload_date': '20181119', 'description': 'duality of bird', 'uploader_id': 'todaysbird', 'uploader_url': 'https://todaysbird.tumblr.com/', @@ -238,6 +246,8 @@ class TumblrIE(InfoExtractor): 'info_dict': { 'id': '730460905855467520', 'uploader_id': 'felixcosm', + 'upload_date': '20231006', + 'timestamp': 1696621805, 'repost_count': int, 'tags': 'count:15', 'description': 'md5:2eb3482a3c6987280cbefb6839068f32', @@ -327,6 +337,8 @@ class TumblrIE(InfoExtractor): 'url': 'https://www.tumblr.com/anyaboz/765332564457209856/my-music-video-for-selkie-by-nobodys-wolf-child', 'info_dict': { 'id': '765332564457209856', + 'timestamp': 1729878010, + 'upload_date': '20241025', 'uploader_id': 'anyaboz', 'repost_count': int, 'age_limit': 0, @@ -445,6 +457,8 @@ class TumblrIE(InfoExtractor): 'uploader_id': uploader_id, 'uploader_url': f'https://{uploader_id}.tumblr.com/' if uploader_id else None, **traverse_obj(post_json, { + # Try oldest post in reblog chain, fall back to timestamp of the post itself + 'timestamp': ((('trail', 0, 'post'), None), 'timestamp', {int_or_none}, any), 'like_count': ('like_count', {int_or_none}), 'repost_count': ('reblog_count', {int_or_none}), 'tags': ('tags', ..., {str}),