1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2024-06-27 19:55:26 +02:00

Update video timestamp tests

This commit is contained in:
coletdjnz 2024-05-11 11:49:25 +12:00
parent 919824f299
commit b69031b221
No known key found for this signature in database
GPG Key ID: 91984263BB39894A

View File

@ -1315,6 +1315,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_url': 'https://www.youtube.com/@PhilippHagemeister', 'uploader_url': 'https://www.youtube.com/@PhilippHagemeister',
'uploader_id': '@PhilippHagemeister', 'uploader_id': '@PhilippHagemeister',
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1349198244,
} }
}, },
{ {
@ -1358,6 +1359,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_url': 'https://www.youtube.com/@PhilippHagemeister', 'uploader_url': 'https://www.youtube.com/@PhilippHagemeister',
'uploader_id': '@PhilippHagemeister', 'uploader_id': '@PhilippHagemeister',
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1349198244,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -1444,6 +1446,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'comment_count': int, 'comment_count': int,
'channel_is_verified': True, 'channel_is_verified': True,
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1401991663,
}, },
}, },
{ {
@ -1503,6 +1506,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader': 'Projekt Melody', 'uploader': 'Projekt Melody',
'uploader_url': 'https://www.youtube.com/@ProjektMelody', 'uploader_url': 'https://www.youtube.com/@ProjektMelody',
'uploader_id': '@ProjektMelody', 'uploader_id': '@ProjektMelody',
'timestamp': 1577508724,
}, },
}, },
{ {
@ -1608,6 +1612,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_url': 'https://www.youtube.com/@Olympics', 'uploader_url': 'https://www.youtube.com/@Olympics',
'uploader_id': '@Olympics', 'uploader_id': '@Olympics',
'channel_is_verified': True, 'channel_is_verified': True,
'timestamp': 1440707674,
}, },
'params': { 'params': {
'skip_download': 'requires avconv', 'skip_download': 'requires avconv',
@ -1641,6 +1646,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader': '孫ᄋᄅ', 'uploader': '孫ᄋᄅ',
'uploader_url': 'https://www.youtube.com/@AllenMeow', 'uploader_url': 'https://www.youtube.com/@AllenMeow',
'uploader_id': '@AllenMeow', 'uploader_id': '@AllenMeow',
'timestamp': 1299776999,
}, },
}, },
# url_encoded_fmt_stream_map is empty string # url_encoded_fmt_stream_map is empty string
@ -1784,6 +1790,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
}, },
}], }],
'params': {'skip_download': True}, 'params': {'skip_download': True},
'skip': 'Not multifeed anymore',
}, },
{ {
# Multifeed video with comma in title (see https://github.com/ytdl-org/youtube-dl/issues/8536) # Multifeed video with comma in title (see https://github.com/ytdl-org/youtube-dl/issues/8536)
@ -1892,6 +1899,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader': 'The Berkman Klein Center for Internet & Society', 'uploader': 'The Berkman Klein Center for Internet & Society',
'uploader_id': '@BKCHarvard', 'uploader_id': '@BKCHarvard',
'uploader_url': 'https://www.youtube.com/@BKCHarvard', 'uploader_url': 'https://www.youtube.com/@BKCHarvard',
'timestamp': 1422422076,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -1927,6 +1935,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_id': '@BernieSanders', 'uploader_id': '@BernieSanders',
'channel_is_verified': True, 'channel_is_verified': True,
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1447987198,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -1990,6 +1999,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_id': '@Vsauce', 'uploader_id': '@Vsauce',
'comment_count': int, 'comment_count': int,
'channel_is_verified': True, 'channel_is_verified': True,
'timestamp': 1484761047,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -2145,6 +2155,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader': 'l\'Or Vert asbl', 'uploader': 'l\'Or Vert asbl',
'uploader_url': 'https://www.youtube.com/@ElevageOrVert', 'uploader_url': 'https://www.youtube.com/@ElevageOrVert',
'uploader_id': '@ElevageOrVert', 'uploader_id': '@ElevageOrVert',
'timestamp': 1497343210,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -2183,6 +2194,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_id': '@Csharp-video-tutorialsBlogspot', 'uploader_id': '@Csharp-video-tutorialsBlogspot',
'channel_is_verified': True, 'channel_is_verified': True,
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1377976349,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -2265,6 +2277,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_id': '@CBSMornings', 'uploader_id': '@CBSMornings',
'comment_count': int, 'comment_count': int,
'channel_is_verified': True, 'channel_is_verified': True,
'timestamp': 1405513526,
} }
}, },
{ {
@ -2282,7 +2295,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'view_count': int, 'view_count': int,
'channel': 'Walk around Japan', 'channel': 'Walk around Japan',
'tags': ['Ueno Tokyo', 'Okachimachi Tokyo', 'Ameyoko Street', 'Tokyo attraction', 'Travel in Tokyo'], 'tags': ['Ueno Tokyo', 'Okachimachi Tokyo', 'Ameyoko Street', 'Tokyo attraction', 'Travel in Tokyo'],
'thumbnail': 'https://i.ytimg.com/vi_webp/cBvYw8_A0vQ/hqdefault.webp', 'thumbnail': 'https://i.ytimg.com/vi/cBvYw8_A0vQ/hqdefault.jpg',
'age_limit': 0, 'age_limit': 0,
'availability': 'public', 'availability': 'public',
'channel_url': 'https://www.youtube.com/channel/UC3o_t8PzBmXf5S9b7GLx1Mw', 'channel_url': 'https://www.youtube.com/channel/UC3o_t8PzBmXf5S9b7GLx1Mw',
@ -2292,6 +2305,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader': 'Walk around Japan', 'uploader': 'Walk around Japan',
'uploader_url': 'https://www.youtube.com/@walkaroundjapan7124', 'uploader_url': 'https://www.youtube.com/@walkaroundjapan7124',
'uploader_id': '@walkaroundjapan7124', 'uploader_id': '@walkaroundjapan7124',
'timestamp': 1605884416,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -2386,6 +2400,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'comment_count': int, 'comment_count': int,
'channel_is_verified': True, 'channel_is_verified': True,
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1395685455,
}, 'params': {'format': 'mhtml', 'skip_download': True} }, 'params': {'format': 'mhtml', 'skip_download': True}
}, { }, {
# Ensure video upload_date is in UTC timezone (video was uploaded 1641170939) # Ensure video upload_date is in UTC timezone (video was uploaded 1641170939)
@ -2415,9 +2430,11 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_url': 'https://www.youtube.com/@LeonNguyen', 'uploader_url': 'https://www.youtube.com/@LeonNguyen',
'uploader_id': '@LeonNguyen', 'uploader_id': '@LeonNguyen',
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1641170939,
} }
}, { }, {
# Same video as above, but with --compat-opt no-youtube-prefer-utc-upload-date # Same video as above, but with --compat-opt no-youtube-prefer-utc-upload-date
# todo: remove compat opt? no longer works
'url': 'https://www.youtube.com/watch?v=2NUZ8W2llS4', 'url': 'https://www.youtube.com/watch?v=2NUZ8W2llS4',
'info_dict': { 'info_dict': {
'id': '2NUZ8W2llS4', 'id': '2NUZ8W2llS4',
@ -2477,38 +2494,41 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'comment_count': int, 'comment_count': int,
'channel_is_verified': True, 'channel_is_verified': True,
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1641172509,
} }
}, },
{ # continuous livestream. Microformat upload date should be preferred. { # continuous livestream.
# Upload date was 2021-06-19 (not UTC), while stream start is 2021-11-27 # Upload date was 2022-07-12T05:12:29-07:00, while stream start is 2022-07-12T15:59:30+00:00
'url': 'https://www.youtube.com/watch?v=kgx4WGK0oNU', 'url': 'https://www.youtube.com/watch?v=jfKfPfyJRdk',
'info_dict': { 'info_dict': {
'id': 'kgx4WGK0oNU', 'id': 'jfKfPfyJRdk',
'title': r're:jazz\/lofi hip hop radio🌱chill beats to relax\/study to \[LIVE 24\/7\] \d{4}-\d{2}-\d{2} \d{2}:\d{2}',
'ext': 'mp4', 'ext': 'mp4',
'channel_id': 'UC84whx2xxsiA1gXHXXqKGOA', 'channel_id': 'UCSJ4gkVC6NrvII8umztf0Ow',
'availability': 'public',
'age_limit': 0,
'release_timestamp': 1637975704,
'upload_date': '20210619',
'channel_url': 'https://www.youtube.com/channel/UC84whx2xxsiA1gXHXXqKGOA',
'live_status': 'is_live',
'thumbnail': 'https://i.ytimg.com/vi/kgx4WGK0oNU/maxresdefault.jpg',
'channel': 'Abao in Tokyo',
'channel_follower_count': int,
'release_date': '20211127',
'tags': 'count:39',
'categories': ['People & Blogs'],
'like_count': int, 'like_count': int,
'view_count': int, 'uploader': 'Lofi Girl',
'playable_in_embed': True, 'categories': ['Music'],
'description': 'md5:2ef1d002cad520f65825346e2084e49d',
'concurrent_view_count': int, 'concurrent_view_count': int,
'uploader': 'Abao in Tokyo', 'playable_in_embed': True,
'uploader_url': 'https://www.youtube.com/@abaointokyo', 'timestamp': 1657627949,
'uploader_id': '@abaointokyo', 'release_date': '20220712',
'channel_url': 'https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow',
'description': 'md5:13a6f76df898f5674f9127139f3df6f7',
'age_limit': 0,
'thumbnail': 'https://i.ytimg.com/vi/jfKfPfyJRdk/maxresdefault.jpg',
'release_timestamp': 1657641570,
'uploader_url': 'https://www.youtube.com/@LofiGirl',
'channel_follower_count': int,
'channel_is_verified': True,
'title': r're:^lofi hip hop radio 📚 - beats to relax/study to',
'view_count': int,
'live_status': 'is_live',
'tags': 'count:32',
'channel': 'Lofi Girl',
'availability': 'public',
'upload_date': '20220712',
'uploader_id': '@LofiGirl',
}, },
'params': {'skip_download': True} 'params': {'skip_download': True},
}, { }, {
'url': 'https://www.youtube.com/watch?v=tjjjtzRLHvA', 'url': 'https://www.youtube.com/watch?v=tjjjtzRLHvA',
'info_dict': { 'info_dict': {
@ -2534,6 +2554,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_id': '@lesmiscore', 'uploader_id': '@lesmiscore',
'uploader': 'Lesmiscore', 'uploader': 'Lesmiscore',
'uploader_url': 'https://www.youtube.com/@lesmiscore', 'uploader_url': 'https://www.youtube.com/@lesmiscore',
'timestamp': 1648005313,
} }
}, { }, {
# Prefer primary title+description language metadata by default # Prefer primary title+description language metadata by default
@ -2561,6 +2582,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_url': 'https://www.youtube.com/@coletdjnz', 'uploader_url': 'https://www.youtube.com/@coletdjnz',
'uploader_id': '@coletdjnz', 'uploader_id': '@coletdjnz',
'uploader': 'cole-dlp-test-acc', 'uploader': 'cole-dlp-test-acc',
'timestamp': 1662677394,
}, },
'params': {'skip_download': True} 'params': {'skip_download': True}
}, { }, {
@ -2574,7 +2596,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'duration': 5, 'duration': 5,
'live_status': 'not_live', 'live_status': 'not_live',
'channel_id': 'UCiu-3thuViMebBjw_5nWYrA', 'channel_id': 'UCiu-3thuViMebBjw_5nWYrA',
'upload_date': '20220728', 'upload_date': '20220729',
'view_count': int, 'view_count': int,
'categories': ['People & Blogs'], 'categories': ['People & Blogs'],
'thumbnail': r're:^https?://.*\.jpg', 'thumbnail': r're:^https?://.*\.jpg',
@ -2587,6 +2609,8 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_url': 'https://www.youtube.com/@coletdjnz', 'uploader_url': 'https://www.youtube.com/@coletdjnz',
'uploader_id': '@coletdjnz', 'uploader_id': '@coletdjnz',
'uploader': 'cole-dlp-test-acc', 'uploader': 'cole-dlp-test-acc',
'timestamp': 1659073275,
'like_count': int,
}, },
'params': {'skip_download': True, 'extractor_args': {'youtube': {'lang': ['fr']}}}, 'params': {'skip_download': True, 'extractor_args': {'youtube': {'lang': ['fr']}}},
'expected_warnings': [r'Preferring "fr" translated fields'], 'expected_warnings': [r'Preferring "fr" translated fields'],
@ -2652,6 +2676,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader': 'Projekt Melody', 'uploader': 'Projekt Melody',
'uploader_id': '@ProjektMelody', 'uploader_id': '@ProjektMelody',
'uploader_url': 'https://www.youtube.com/@ProjektMelody', 'uploader_url': 'https://www.youtube.com/@ProjektMelody',
'timestamp': 1577508724,
}, },
'params': {'extractor_args': {'youtube': {'player_client': ['tv_embedded']}}, 'format': '251-drc'}, 'params': {'extractor_args': {'youtube': {'player_client': ['tv_embedded']}}, 'format': '251-drc'},
}, },
@ -2686,6 +2711,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_id': '@sana_natori', 'uploader_id': '@sana_natori',
'channel_is_verified': True, 'channel_is_verified': True,
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1671798112,
}, },
}, },
{ {
@ -2755,6 +2781,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
'uploader_url': 'https://www.youtube.com/@ChristopherSykesDocumentaries', 'uploader_url': 'https://www.youtube.com/@ChristopherSykesDocumentaries',
'uploader_id': '@ChristopherSykesDocumentaries', 'uploader_id': '@ChristopherSykesDocumentaries',
'heatmap': 'count:100', 'heatmap': 'count:100',
'timestamp': 1211825920,
}, },
'params': { 'params': {
'skip_download': True, 'skip_download': True,
@ -3621,7 +3648,7 @@ def _extract_player_response(self, client, video_id, master_ytcfg, player_ytcfg,
def _get_requested_clients(self, url, smuggled_data): def _get_requested_clients(self, url, smuggled_data):
requested_clients = [] requested_clients = []
default = ['ios', 'android', 'web'] default = ['ios', 'web']
allowed_clients = sorted( allowed_clients = sorted(
(client for client in INNERTUBE_CLIENTS.keys() if client[:1] != '_'), (client for client in INNERTUBE_CLIENTS.keys() if client[:1] != '_'),
key=lambda client: INNERTUBE_CLIENTS[client]['priority'], reverse=True) key=lambda client: INNERTUBE_CLIENTS[client]['priority'], reverse=True)