yt-dlp 2026.1.5.233118.dev0__py3-none-any.whl → 2026.1.6.233142.dev0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- yt_dlp/extractor/lazy_extractors.py +1 -1
- yt_dlp/extractor/tarangplus.py +22 -3
- yt_dlp/extractor/zdf.py +136 -126
- yt_dlp/version.py +3 -3
- {yt_dlp-2026.1.5.233118.dev0.dist-info → yt_dlp-2026.1.6.233142.dev0.dist-info}/METADATA +1 -1
- {yt_dlp-2026.1.5.233118.dev0.dist-info → yt_dlp-2026.1.6.233142.dev0.dist-info}/RECORD +14 -14
- {yt_dlp-2026.1.5.233118.dev0.data → yt_dlp-2026.1.6.233142.dev0.data}/data/share/bash-completion/completions/yt-dlp +0 -0
- {yt_dlp-2026.1.5.233118.dev0.data → yt_dlp-2026.1.6.233142.dev0.data}/data/share/doc/yt_dlp/README.txt +0 -0
- {yt_dlp-2026.1.5.233118.dev0.data → yt_dlp-2026.1.6.233142.dev0.data}/data/share/fish/vendor_completions.d/yt-dlp.fish +0 -0
- {yt_dlp-2026.1.5.233118.dev0.data → yt_dlp-2026.1.6.233142.dev0.data}/data/share/man/man1/yt-dlp.1 +0 -0
- {yt_dlp-2026.1.5.233118.dev0.data → yt_dlp-2026.1.6.233142.dev0.data}/data/share/zsh/site-functions/_yt-dlp +0 -0
- {yt_dlp-2026.1.5.233118.dev0.dist-info → yt_dlp-2026.1.6.233142.dev0.dist-info}/WHEEL +0 -0
- {yt_dlp-2026.1.5.233118.dev0.dist-info → yt_dlp-2026.1.6.233142.dev0.dist-info}/entry_points.txt +0 -0
- {yt_dlp-2026.1.5.233118.dev0.dist-info → yt_dlp-2026.1.6.233142.dev0.dist-info}/licenses/LICENSE +0 -0
|
@@ -15575,7 +15575,7 @@ class ZDFChannelIE(ZDFBaseIE):
|
|
|
15575
15575
|
class ZDFIE(ZDFBaseIE):
|
|
15576
15576
|
_module = 'yt_dlp.extractor.zdf'
|
|
15577
15577
|
IE_NAME = 'zdf'
|
|
15578
|
-
_VALID_URL = ['https?://(?:www\\.)?zdf\\.de/(?:video|play)/(?:[^/?#]+/)*(?P<id>[^/?#]+)', 'https?://(?:www\\.)?zdf\\.de/(?:[^/?#]+/)*(?P<id>[^/?#]+)\\.html']
|
|
15578
|
+
_VALID_URL = ['https?://(?:www\\.)?zdf\\.de/(?:video|play)/(?:[^/?#]+/)*(?P<id>[^/?#]+)', 'https?://(?:www\\.)?zdf\\.de/(?:[^/?#]+/)*(?P<id>[^/?#]+)\\.html', 'https?://(?:www\\.)?(?:zdfheute|logo)\\.de/(?:[^/?#]+/)*(?P<id>[^/?#]+)\\.html']
|
|
15579
15579
|
_RETURN_TYPE = 'video'
|
|
15580
15580
|
|
|
15581
15581
|
|
yt_dlp/extractor/tarangplus.py
CHANGED
|
@@ -2,6 +2,7 @@ import base64
|
|
|
2
2
|
import binascii
|
|
3
3
|
import functools
|
|
4
4
|
import re
|
|
5
|
+
import urllib.parse
|
|
5
6
|
|
|
6
7
|
from .common import InfoExtractor
|
|
7
8
|
from ..dependencies import Cryptodome
|
|
@@ -36,7 +37,7 @@ class TarangPlusVideoIE(TarangPlusBaseIE):
|
|
|
36
37
|
'ext': 'mp4',
|
|
37
38
|
'title': 'Khitpit Ep-10',
|
|
38
39
|
'description': 'md5:a45b805cb628e15c853d78b0406eab48',
|
|
39
|
-
'thumbnail': r're:https
|
|
40
|
+
'thumbnail': r're:https?://.+/.+\.jpg',
|
|
40
41
|
'duration': 756.0,
|
|
41
42
|
'timestamp': 1740355200,
|
|
42
43
|
'upload_date': '20250224',
|
|
@@ -52,13 +53,30 @@ class TarangPlusVideoIE(TarangPlusBaseIE):
|
|
|
52
53
|
'ext': 'mp4',
|
|
53
54
|
'title': 'Bada Bohu | Ep -233',
|
|
54
55
|
'description': 'md5:e6b8e7edc9e60b92c1b390f8789ecd69',
|
|
55
|
-
'thumbnail': r're:https
|
|
56
|
+
'thumbnail': r're:https?://.+/.+\.jpg',
|
|
56
57
|
'duration': 1392.0,
|
|
57
58
|
'timestamp': 1745539200,
|
|
58
59
|
'upload_date': '20250425',
|
|
59
60
|
'media_type': 'episode',
|
|
60
61
|
'categories': ['Prime'],
|
|
61
62
|
},
|
|
63
|
+
}, {
|
|
64
|
+
# Decrypted m3u8 URL has trailing control characters that need to be stripped
|
|
65
|
+
'url': 'https://tarangplus.in/tarangaplus-originals/ichha/ichha-teaser-1',
|
|
66
|
+
'md5': '16ee43fe21ad8b6e652ec65eba38a64e',
|
|
67
|
+
'info_dict': {
|
|
68
|
+
'id': '5f0f252d3326af0720000342',
|
|
69
|
+
'ext': 'mp4',
|
|
70
|
+
'display_id': 'ichha-teaser-1',
|
|
71
|
+
'title': 'Ichha Teaser',
|
|
72
|
+
'description': 'md5:c724b0b0669a2cefdada3711cec792e6',
|
|
73
|
+
'media_type': 'episode',
|
|
74
|
+
'duration': 21.0,
|
|
75
|
+
'thumbnail': r're:https?://.+/.+\.jpg',
|
|
76
|
+
'categories': ['Originals'],
|
|
77
|
+
'timestamp': 1758153600,
|
|
78
|
+
'upload_date': '20250918',
|
|
79
|
+
},
|
|
62
80
|
}, {
|
|
63
81
|
'url': 'https://tarangplus.in/short/ai-maa/ai-maa',
|
|
64
82
|
'only_matching': True,
|
|
@@ -100,7 +118,8 @@ class TarangPlusVideoIE(TarangPlusBaseIE):
|
|
|
100
118
|
m.group('k'): m.group('v')
|
|
101
119
|
for m in re.finditer(r'(?:^|\|)(?P<k>[a-z_]+)=(?P<v>(?:(?!\|[a-z_]+=).)+)', attrs)
|
|
102
120
|
}
|
|
103
|
-
m3u8_url =
|
|
121
|
+
m3u8_url = urllib.parse.unquote(
|
|
122
|
+
self.decrypt(encrypted_data, metadata['key'])).rstrip('\x0e\x0f')
|
|
104
123
|
|
|
105
124
|
return {
|
|
106
125
|
'id': display_id, # Fallback
|
yt_dlp/extractor/zdf.py
CHANGED
|
@@ -127,6 +127,7 @@ class ZDFBaseIE(InfoExtractor):
|
|
|
127
127
|
**parse_codecs(quality.get('mimeCodec')),
|
|
128
128
|
'height': height,
|
|
129
129
|
'width': width,
|
|
130
|
+
'filesize': int_or_none(variant.get('filesize')),
|
|
130
131
|
'format_id': join_nonempty('http', stream.get('type')),
|
|
131
132
|
'tbr': int_or_none(self._search_regex(r'_(\d+)k_', format_url, 'tbr', default=None)),
|
|
132
133
|
}]
|
|
@@ -193,8 +194,10 @@ class ZDFBaseIE(InfoExtractor):
|
|
|
193
194
|
class ZDFIE(ZDFBaseIE):
|
|
194
195
|
_VALID_URL = [
|
|
195
196
|
r'https?://(?:www\.)?zdf\.de/(?:video|play)/(?:[^/?#]+/)*(?P<id>[^/?#]+)',
|
|
196
|
-
#
|
|
197
|
+
# Legacy redirects from before the redesign in 2025-03 or from before sister sites moved to their own domains
|
|
197
198
|
r'https?://(?:www\.)?zdf\.de/(?:[^/?#]+/)*(?P<id>[^/?#]+)\.html',
|
|
199
|
+
# Sister sites
|
|
200
|
+
r'https?://(?:www\.)?(?:zdfheute|logo)\.de/(?:[^/?#]+/)*(?P<id>[^/?#]+)\.html',
|
|
198
201
|
]
|
|
199
202
|
IE_NAME = 'zdf'
|
|
200
203
|
_TESTS = [{
|
|
@@ -206,7 +209,7 @@ class ZDFIE(ZDFBaseIE):
|
|
|
206
209
|
'title': 'Sylt - Deutschlands edles Nordlicht',
|
|
207
210
|
'description': 'md5:35407b810c2e1e33efbe15ef6e4c06c3',
|
|
208
211
|
'duration': 810.0,
|
|
209
|
-
'thumbnail': 'https://www
|
|
212
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/sylt-118~original\?cb=\d+',
|
|
210
213
|
'series': 'Sylt - Deutschlands edles Nordlicht',
|
|
211
214
|
'series_id': 'sylt---deutschlands-edles-nordlicht-movie-100',
|
|
212
215
|
'timestamp': 1612462500,
|
|
@@ -222,7 +225,7 @@ class ZDFIE(ZDFBaseIE):
|
|
|
222
225
|
'title': 'Sylt - Deutschlands edles Nordlicht',
|
|
223
226
|
'description': 'md5:35407b810c2e1e33efbe15ef6e4c06c3',
|
|
224
227
|
'duration': 810.0,
|
|
225
|
-
'thumbnail': 'https://www
|
|
228
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/sylt-118~original\?cb=\d+',
|
|
226
229
|
'series': 'Sylt - Deutschlands edles Nordlicht',
|
|
227
230
|
'series_id': 'sylt---deutschlands-edles-nordlicht-movie-100',
|
|
228
231
|
'timestamp': 1612462500,
|
|
@@ -239,7 +242,7 @@ class ZDFIE(ZDFBaseIE):
|
|
|
239
242
|
'title': 'Sylt - Deutschlands edles Nordlicht',
|
|
240
243
|
'description': 'md5:35407b810c2e1e33efbe15ef6e4c06c3',
|
|
241
244
|
'duration': 810.0,
|
|
242
|
-
'thumbnail': 'https://www
|
|
245
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/sylt-118~original\?cb=\d+',
|
|
243
246
|
'series': 'Sylt - Deutschlands edles Nordlicht',
|
|
244
247
|
'series_id': 'sylt---deutschlands-edles-nordlicht-movie-100',
|
|
245
248
|
'timestamp': 1612462500,
|
|
@@ -249,67 +252,66 @@ class ZDFIE(ZDFBaseIE):
|
|
|
249
252
|
'params': {'skip_download': True},
|
|
250
253
|
}, {
|
|
251
254
|
# Video belongs to a playlist, video URL
|
|
252
|
-
|
|
253
|
-
'
|
|
255
|
+
# Also: video mirrored from ARD Mediathek
|
|
256
|
+
'url': 'https://www.zdf.de/video/dokus/collection-index-page-ard-collection-ard-dxjuomfyzdpzag93ojy2mzhhmmq3mzk2ztq4nda-132/page-video-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102',
|
|
257
|
+
'md5': '84980c1a0148da6cd94de58333d7e1ee',
|
|
254
258
|
'info_dict': {
|
|
255
|
-
'id': '
|
|
259
|
+
'id': 'page-video-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102',
|
|
256
260
|
'ext': 'mp4',
|
|
257
|
-
'title': '
|
|
258
|
-
'description': 'md5:
|
|
259
|
-
'duration':
|
|
260
|
-
'thumbnail': 'https://www
|
|
261
|
+
'title': 'Gelb: Vom hellen Glanz zu finsteren Abgründen',
|
|
262
|
+
'description': 'md5:9aad4806b4c8ea152ab21e70c9d516be',
|
|
263
|
+
'duration': 895.0,
|
|
264
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/image-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102~original\?cb=\d+',
|
|
261
265
|
'series': 'Die Magie der Farben',
|
|
262
|
-
'series_id': '
|
|
263
|
-
'season': 'Season
|
|
264
|
-
'season_number':
|
|
265
|
-
'episode': 'Episode
|
|
266
|
-
'episode_number':
|
|
267
|
-
'timestamp':
|
|
268
|
-
'upload_date': '
|
|
269
|
-
'_old_archive_ids': ['zdf
|
|
266
|
+
'series_id': 'collection-index-page-ard-collection-ard-dxjuomfyzdpzag93ojy2mzhhmmq3mzk2ztq4nda-132',
|
|
267
|
+
'season': 'Season 2023',
|
|
268
|
+
'season_number': 2023,
|
|
269
|
+
'episode': 'Episode 5',
|
|
270
|
+
'episode_number': 5,
|
|
271
|
+
'timestamp': 1690902120,
|
|
272
|
+
'upload_date': '20230801',
|
|
273
|
+
'_old_archive_ids': ['zdf video_ard_dXJuOmFyZDpwdWJsaWNhdGlvbjo0YTYyOTJjM2Q0ZThlNmY1'],
|
|
270
274
|
},
|
|
271
275
|
}, {
|
|
272
276
|
# Video belongs to a playlist, play URL
|
|
273
|
-
'url': 'https://www.zdf.de/play/dokus/
|
|
274
|
-
'md5': '1eda17eb40a9ead3046326e10b9c5973',
|
|
277
|
+
'url': 'https://www.zdf.de/play/dokus/collection-index-page-ard-collection-ard-dxjuomfyzdpzag93ojy2mzhhmmq3mzk2ztq4nda-132/page-video-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102',
|
|
275
278
|
'info_dict': {
|
|
276
|
-
'id': '
|
|
279
|
+
'id': 'page-video-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102',
|
|
277
280
|
'ext': 'mp4',
|
|
278
|
-
'title': '
|
|
279
|
-
'description': 'md5:
|
|
280
|
-
'duration':
|
|
281
|
-
'thumbnail': 'https://www
|
|
281
|
+
'title': 'Gelb: Vom hellen Glanz zu finsteren Abgründen',
|
|
282
|
+
'description': 'md5:9aad4806b4c8ea152ab21e70c9d516be',
|
|
283
|
+
'duration': 895.0,
|
|
284
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/image-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102~original\?cb=\d+',
|
|
282
285
|
'series': 'Die Magie der Farben',
|
|
283
|
-
'series_id': '
|
|
284
|
-
'season': 'Season
|
|
285
|
-
'season_number':
|
|
286
|
-
'episode': 'Episode
|
|
287
|
-
'episode_number':
|
|
288
|
-
'timestamp':
|
|
289
|
-
'upload_date': '
|
|
290
|
-
'_old_archive_ids': ['zdf
|
|
286
|
+
'series_id': 'collection-index-page-ard-collection-ard-dxjuomfyzdpzag93ojy2mzhhmmq3mzk2ztq4nda-132',
|
|
287
|
+
'season': 'Season 2023',
|
|
288
|
+
'season_number': 2023,
|
|
289
|
+
'episode': 'Episode 5',
|
|
290
|
+
'episode_number': 5,
|
|
291
|
+
'timestamp': 1690902120,
|
|
292
|
+
'upload_date': '20230801',
|
|
293
|
+
'_old_archive_ids': ['zdf video_ard_dXJuOmFyZDpwdWJsaWNhdGlvbjo0YTYyOTJjM2Q0ZThlNmY1'],
|
|
291
294
|
},
|
|
292
295
|
'params': {'skip_download': True},
|
|
293
296
|
}, {
|
|
294
297
|
# Video belongs to a playlist, legacy URL before website redesign in 2025-03
|
|
295
|
-
'url': 'https://www.zdf.de/
|
|
296
|
-
'md5': '1eda17eb40a9ead3046326e10b9c5973',
|
|
298
|
+
'url': 'https://www.zdf.de/dokus/collection-index-page-ard-collection-ard-dxjuomfyzdpzag93ojy2mzhhmmq3mzk2ztq4nda-132/page-video-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102.html',
|
|
297
299
|
'info_dict': {
|
|
298
|
-
'id': '
|
|
300
|
+
'id': 'page-video-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102',
|
|
299
301
|
'ext': 'mp4',
|
|
300
|
-
'title': '
|
|
301
|
-
'description': 'md5:
|
|
302
|
-
'duration':
|
|
303
|
-
'thumbnail': 'https://www
|
|
302
|
+
'title': 'Gelb: Vom hellen Glanz zu finsteren Abgründen',
|
|
303
|
+
'description': 'md5:9aad4806b4c8ea152ab21e70c9d516be',
|
|
304
|
+
'duration': 895.0,
|
|
305
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/image-ard-gelb-vom-hellen-glanz-zu-finsteren-abgruenden-102~original\?cb=\d+',
|
|
304
306
|
'series': 'Die Magie der Farben',
|
|
305
|
-
'series_id': '
|
|
306
|
-
'season': 'Season
|
|
307
|
-
'season_number':
|
|
308
|
-
'episode': 'Episode
|
|
309
|
-
'episode_number':
|
|
310
|
-
'timestamp':
|
|
311
|
-
'upload_date': '
|
|
312
|
-
'_old_archive_ids': ['zdf
|
|
307
|
+
'series_id': 'collection-index-page-ard-collection-ard-dxjuomfyzdpzag93ojy2mzhhmmq3mzk2ztq4nda-132',
|
|
308
|
+
'season': 'Season 2023',
|
|
309
|
+
'season_number': 2023,
|
|
310
|
+
'episode': 'Episode 5',
|
|
311
|
+
'episode_number': 5,
|
|
312
|
+
'timestamp': 1690902120,
|
|
313
|
+
'upload_date': '20230801',
|
|
314
|
+
'_old_archive_ids': ['zdf video_ard_dXJuOmFyZDpwdWJsaWNhdGlvbjo0YTYyOTJjM2Q0ZThlNmY1'],
|
|
313
315
|
},
|
|
314
316
|
'params': {'skip_download': True},
|
|
315
317
|
}, {
|
|
@@ -336,24 +338,9 @@ class ZDFIE(ZDFBaseIE):
|
|
|
336
338
|
# Videos with sign language variants must not have a 'dgs' suffix on their old archive IDs.
|
|
337
339
|
'_old_archive_ids': ['zdf 211219_sendung_hjo'],
|
|
338
340
|
},
|
|
339
|
-
}, {
|
|
340
|
-
# Video that requires fallback extraction
|
|
341
|
-
'url': 'https://www.zdf.de/nachrichten/politik/deutschland/koalitionsverhandlungen-spd-cdu-csu-dobrindt-100.html',
|
|
342
|
-
'md5': 'c3a78514dd993a5781aa3afe50db51e2',
|
|
343
|
-
'info_dict': {
|
|
344
|
-
'id': 'koalitionsverhandlungen-spd-cdu-csu-dobrindt-100',
|
|
345
|
-
'ext': 'mp4',
|
|
346
|
-
'title': 'Dobrindt schließt Steuererhöhungen aus',
|
|
347
|
-
'description': 'md5:9a117646d7b8df6bc902eb543a9c9023',
|
|
348
|
-
'duration': 325,
|
|
349
|
-
'thumbnail': 'https://www.zdfheute.de/assets/dobrindt-csu-berlin-direkt-100~1920x1080?cb=1743357653736',
|
|
350
|
-
'timestamp': 1743374520,
|
|
351
|
-
'upload_date': '20250330',
|
|
352
|
-
'_old_archive_ids': ['zdf 250330_clip_2_bdi'],
|
|
353
|
-
},
|
|
354
341
|
}, {
|
|
355
342
|
# FUNK video (hosted on a different CDN, has atypical PTMD and HLS files)
|
|
356
|
-
'url': 'https://www.zdf.de/funk
|
|
343
|
+
'url': 'https://www.zdf.de/video/serien/funk-collection-funk-11790-1596/funk-alles-ist-verzaubert-102',
|
|
357
344
|
'md5': '57af4423db0455a3975d2dc4578536bc',
|
|
358
345
|
'info_dict': {
|
|
359
346
|
'id': 'funk-alles-ist-verzaubert-102',
|
|
@@ -361,56 +348,93 @@ class ZDFIE(ZDFBaseIE):
|
|
|
361
348
|
'title': 'Alles ist verzaubert',
|
|
362
349
|
'description': 'Die Neue an der Schule verdreht Ismail den Kopf.',
|
|
363
350
|
'duration': 1278.0,
|
|
364
|
-
'thumbnail': 'https://www
|
|
351
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/teaser-funk-alles-ist-verzaubert-102~original\?cb=\d+',
|
|
365
352
|
'series': 'DRUCK',
|
|
366
|
-
'series_id': 'funk-collection-funk-11790-
|
|
367
|
-
'season': 'Season
|
|
368
|
-
'season_number':
|
|
369
|
-
'episode': 'Episode
|
|
370
|
-
'episode_number':
|
|
353
|
+
'series_id': 'funk-collection-funk-11790-1596',
|
|
354
|
+
'season': 'Season 2021',
|
|
355
|
+
'season_number': 2021,
|
|
356
|
+
'episode': 'Episode 50',
|
|
357
|
+
'episode_number': 50,
|
|
371
358
|
'timestamp': 1635520560,
|
|
372
359
|
'upload_date': '20211029',
|
|
373
360
|
'_old_archive_ids': ['zdf video_funk_1770473'],
|
|
374
361
|
},
|
|
375
362
|
}, {
|
|
376
|
-
|
|
363
|
+
# zdfheute video, also available on zdf.de
|
|
364
|
+
'url': 'https://www.zdfheute.de/video/heute-journal/heute-journal-vom-19-dezember-2025-100.html',
|
|
365
|
+
'md5': '47af8c2cfa30abf74501170f62754c63',
|
|
377
366
|
'info_dict': {
|
|
378
|
-
'id': '
|
|
367
|
+
'id': 'heute-journal-vom-19-dezember-2025-100',
|
|
379
368
|
'ext': 'mp4',
|
|
380
|
-
'title': '
|
|
381
|
-
'description': 'md5:
|
|
382
|
-
'duration':
|
|
383
|
-
'thumbnail': 'https://epg-image.zdf.de/fotobase-webdelivery/images/
|
|
384
|
-
'
|
|
385
|
-
'
|
|
386
|
-
'
|
|
387
|
-
'
|
|
388
|
-
'
|
|
389
|
-
'
|
|
390
|
-
'
|
|
391
|
-
'
|
|
392
|
-
'
|
|
369
|
+
'title': 'heute journal vom 19. Dezember 2025',
|
|
370
|
+
'description': 'md5:fd0dfbce0783486db839ff9140a8074b',
|
|
371
|
+
'duration': 1780.0,
|
|
372
|
+
'thumbnail': 'https://epg-image.zdf.de/fotobase-webdelivery/images/273e5545-16e7-4ca3-898e-52fe9e06d964?layout=2400x1350',
|
|
373
|
+
'chapters': 'count:10',
|
|
374
|
+
'series': 'heute journal',
|
|
375
|
+
'series_id': 'heute-journal-104',
|
|
376
|
+
'season': 'Season 2025',
|
|
377
|
+
'season_number': 2025,
|
|
378
|
+
'episode': 'Episode 365',
|
|
379
|
+
'episode_number': 365,
|
|
380
|
+
'timestamp': 1766178000,
|
|
381
|
+
'upload_date': '20251219',
|
|
382
|
+
'_old_archive_ids': ['zdf 251219_2200_sendung_hjo'],
|
|
393
383
|
},
|
|
394
384
|
}, {
|
|
395
|
-
|
|
385
|
+
# zdfheute video, not available on zdf.de (uses the fallback extraction path)
|
|
386
|
+
'url': 'https://www.zdf.de/nachrichten/politik/deutschland/koalitionsverhandlungen-spd-cdu-csu-dobrindt-100.html',
|
|
387
|
+
'md5': 'c3a78514dd993a5781aa3afe50db51e2',
|
|
396
388
|
'info_dict': {
|
|
397
|
-
'id': '
|
|
398
|
-
'ext': '
|
|
399
|
-
'title': '
|
|
400
|
-
'description': 'md5:
|
|
401
|
-
'duration':
|
|
402
|
-
'thumbnail': 'https://
|
|
403
|
-
'
|
|
404
|
-
'
|
|
405
|
-
'
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
389
|
+
'id': 'koalitionsverhandlungen-spd-cdu-csu-dobrindt-100',
|
|
390
|
+
'ext': 'mp4',
|
|
391
|
+
'title': 'Dobrindt schließt Steuererhöhungen aus',
|
|
392
|
+
'description': 'md5:9a117646d7b8df6bc902eb543a9c9023',
|
|
393
|
+
'duration': 325,
|
|
394
|
+
'thumbnail': r're:https://www\.zdfheute\.de/assets/dobrindt-csu-berlin-direkt-100~1920x1080\?cb=\d+',
|
|
395
|
+
'timestamp': 1743374520,
|
|
396
|
+
'upload_date': '20250330',
|
|
397
|
+
'_old_archive_ids': ['zdf 250330_clip_2_bdi'],
|
|
398
|
+
},
|
|
399
|
+
}, {
|
|
400
|
+
# logo! video, also available on zdf.de
|
|
401
|
+
'url': 'https://www.logo.de/logo-vom-freitag-19-dezember-2025-102.html',
|
|
402
|
+
'md5': 'cfb1a0988b1249f052a437a55851134b',
|
|
403
|
+
'info_dict': {
|
|
404
|
+
'id': 'logo-vom-freitag-19-dezember-2025-102',
|
|
405
|
+
'ext': 'mp4',
|
|
406
|
+
'title': 'logo! vom Freitag, 19. Dezember 2025',
|
|
407
|
+
'description': 'md5:971428cb563e924c153580f23870c613',
|
|
408
|
+
'duration': 490.0,
|
|
409
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/iran-rote-erde-sendung-19-dezember-2025-100~original\?cb=\d+',
|
|
410
|
+
'chapters': 'count:7',
|
|
411
|
+
'series': 'logo!',
|
|
412
|
+
'series_id': 'logo-154',
|
|
413
|
+
'season': 'Season 2025',
|
|
414
|
+
'season_number': 2025,
|
|
415
|
+
'episode': 'Episode 382',
|
|
416
|
+
'episode_number': 382,
|
|
417
|
+
'timestamp': 1766168700,
|
|
418
|
+
'upload_date': '20251219',
|
|
419
|
+
'_old_archive_ids': ['zdf 251219_1925_sendung_log'],
|
|
420
|
+
},
|
|
421
|
+
}, {
|
|
422
|
+
# logo! video, not available on zdf.de (uses the fallback extraction path)
|
|
423
|
+
'url': 'https://www.logo.de/kinderreporter-vivaan-trifft-alina-grijseels-100.html',
|
|
424
|
+
'md5': '094cea026babb67aa25fd0108400bc12',
|
|
425
|
+
'info_dict': {
|
|
426
|
+
'id': 'kinderreporter-vivaan-trifft-alina-grijseels-100',
|
|
427
|
+
'ext': 'mp4',
|
|
428
|
+
'title': 'Vivaan trifft Handballerin Alina Grijseels',
|
|
429
|
+
'description': 'md5:9572e7f4340dda823ea4091a76624da6',
|
|
430
|
+
'duration': 166.0,
|
|
431
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/vivaan-alina-grijseels-100~original\?cb=\d+',
|
|
432
|
+
'series': 'logo!',
|
|
433
|
+
'series_id': 'logo-154',
|
|
434
|
+
'timestamp': 1766236320,
|
|
435
|
+
'upload_date': '20251220',
|
|
436
|
+
'_old_archive_ids': ['zdf 251219_kr_alina_grijseels_neu_log'],
|
|
412
437
|
},
|
|
413
|
-
'params': {'skip_download': 'geo-restricted http format'},
|
|
414
438
|
}, {
|
|
415
439
|
# Same as https://www.phoenix.de/sendungen/ereignisse/corona-nachgehakt/wohin-fuehrt-der-protest-in-der-pandemie-a-2050630.html
|
|
416
440
|
'url': 'https://www.zdf.de/politik/phoenix-sendungen/wohin-fuehrt-der-protest-in-der-pandemie-100.html',
|
|
@@ -617,7 +641,7 @@ class ZDFChannelIE(ZDFBaseIE):
|
|
|
617
641
|
'title': 'Sylt - Deutschlands edles Nordlicht',
|
|
618
642
|
'description': 'md5:35407b810c2e1e33efbe15ef6e4c06c3',
|
|
619
643
|
'duration': 810.0,
|
|
620
|
-
'thumbnail': 'https://www
|
|
644
|
+
'thumbnail': r're:https://www\.zdf\.de/assets/sylt-118~original\?cb=\d+',
|
|
621
645
|
'series': 'Sylt - Deutschlands edles Nordlicht',
|
|
622
646
|
'series_id': 'sylt---deutschlands-edles-nordlicht-movie-100',
|
|
623
647
|
'timestamp': 1612462500,
|
|
@@ -634,38 +658,24 @@ class ZDFChannelIE(ZDFBaseIE):
|
|
|
634
658
|
},
|
|
635
659
|
'playlist_mincount': 2,
|
|
636
660
|
}, {
|
|
637
|
-
|
|
638
|
-
'info_dict': {
|
|
639
|
-
'id': 'taunuskrimi-100',
|
|
640
|
-
'title': 'Taunuskrimi',
|
|
641
|
-
'description': 'md5:ee7204e9c625c3b611d1274f9d0e3070',
|
|
642
|
-
},
|
|
643
|
-
'playlist_mincount': 8,
|
|
644
|
-
}, {
|
|
645
|
-
'url': 'https://www.zdf.de/serien/taunuskrimi/?staffel=1',
|
|
646
|
-
'info_dict': {
|
|
647
|
-
'id': 'taunuskrimi-100-s1',
|
|
648
|
-
'title': 'Taunuskrimi - Season 1',
|
|
649
|
-
'description': 'md5:ee7204e9c625c3b611d1274f9d0e3070',
|
|
650
|
-
},
|
|
651
|
-
'playlist_count': 7,
|
|
652
|
-
}, {
|
|
661
|
+
# All seasons of playlist
|
|
653
662
|
'url': 'https://www.zdf.de/magazine/heute-journal-104',
|
|
654
663
|
'info_dict': {
|
|
655
664
|
'id': 'heute-journal-104',
|
|
656
665
|
'title': 'heute journal',
|
|
657
666
|
'description': 'md5:6edad39189abf8431795d3d6d7f986b3',
|
|
658
667
|
},
|
|
659
|
-
'playlist_mincount':
|
|
668
|
+
'playlist_mincount': 366,
|
|
660
669
|
}, {
|
|
661
|
-
|
|
670
|
+
# Only selected season
|
|
671
|
+
'url': 'https://www.zdf.de/magazine/heute-journal-104?staffel=2025',
|
|
662
672
|
'info_dict': {
|
|
663
|
-
'id': 'heute-journal-104-
|
|
664
|
-
'title': 'heute journal - Season
|
|
673
|
+
'id': 'heute-journal-104-s2025',
|
|
674
|
+
'title': 'heute journal - Season 2025',
|
|
665
675
|
'description': 'md5:6edad39189abf8431795d3d6d7f986b3',
|
|
666
676
|
},
|
|
667
|
-
'
|
|
668
|
-
'
|
|
677
|
+
'playlist_mincount': 1,
|
|
678
|
+
'playlist_maxcount': 365,
|
|
669
679
|
}]
|
|
670
680
|
|
|
671
681
|
_PAGE_SIZE = 24
|
yt_dlp/version.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Autogenerated by devscripts/update-version.py
|
|
2
2
|
|
|
3
|
-
__version__ = '2026.01.
|
|
3
|
+
__version__ = '2026.01.06.233142'
|
|
4
4
|
|
|
5
|
-
RELEASE_GIT_HEAD = '
|
|
5
|
+
RELEASE_GIT_HEAD = '27afb31edc492cb079f9bce9773498d08e568ff3'
|
|
6
6
|
|
|
7
7
|
VARIANT = 'pip'
|
|
8
8
|
|
|
@@ -12,4 +12,4 @@ CHANNEL = 'nightly'
|
|
|
12
12
|
|
|
13
13
|
ORIGIN = 'yt-dlp/yt-dlp-nightly-builds'
|
|
14
14
|
|
|
15
|
-
_pkg_version = '2026.01.
|
|
15
|
+
_pkg_version = '2026.01.06.233142dev'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: yt-dlp
|
|
3
|
-
Version: 2026.1.
|
|
3
|
+
Version: 2026.1.6.233142.dev0
|
|
4
4
|
Summary: A feature-rich command-line audio/video downloader
|
|
5
5
|
Project-URL: Documentation, https://github.com/yt-dlp/yt-dlp#readme
|
|
6
6
|
Project-URL: Repository, https://github.com/yt-dlp/yt-dlp
|
|
@@ -11,7 +11,7 @@ yt_dlp/options.py,sha256=72Qipr6jhFUO4gUPTIJsqYeHujnZi1L1GYx1Vn5qtiM,100390
|
|
|
11
11
|
yt_dlp/plugins.py,sha256=EGmR0ydaahNspGrgszTNX4-YjHe93WOOhcw1gf6PZSs,8215
|
|
12
12
|
yt_dlp/socks.py,sha256=oAuAfWM6jxI8A5hHDLEKq2U2-k9NyMB_z6nrKzNE9fg,8936
|
|
13
13
|
yt_dlp/update.py,sha256=sY7gNFBQorzs7sEjRrqL5QOsTBNmGGa_FnpTtbxY1vA,25280
|
|
14
|
-
yt_dlp/version.py,sha256=
|
|
14
|
+
yt_dlp/version.py,sha256=b7EpX4cx7rWI3karnSaLVDaId-F76_0JaqJ3ch2D8eA,360
|
|
15
15
|
yt_dlp/webvtt.py,sha256=ONkXaaNCZcX8pQhJn3iwIKyaQ34BtVDrMEdG6wRNZwM,11451
|
|
16
16
|
yt_dlp/__pyinstaller/__init__.py,sha256=-c4Zo8nQGKAm8wc_LDscxMtK7zr_YhZwRnC9CMruUBE,72
|
|
17
17
|
yt_dlp/__pyinstaller/hook-yt_dlp.py,sha256=5Rd0zV2pDskjY1KtT0wsjxv4hStx67sLCjUexsFvFus,1339
|
|
@@ -461,7 +461,7 @@ yt_dlp/extractor/la7.py,sha256=GShDLu1N0rS1bY4uIiUkznThvn7gNiwtSgmh7Rs7t08,9435
|
|
|
461
461
|
yt_dlp/extractor/laracasts.py,sha256=PzTqAbHXiUqog-mpp2qR_rpKa-sZel4mLyzWTPkbDuc,4587
|
|
462
462
|
yt_dlp/extractor/lastfm.py,sha256=OpmE-Y-2rcav2r2xaDQzX_EJiltmbbe6fO9VzkLqNWQ,4748
|
|
463
463
|
yt_dlp/extractor/laxarxames.py,sha256=-YyL-5y4t2L9ptTSLXhvK-SJwvXGqv5l1HfT129zF0c,2773
|
|
464
|
-
yt_dlp/extractor/lazy_extractors.py,sha256=
|
|
464
|
+
yt_dlp/extractor/lazy_extractors.py,sha256=tpI7xsGh5KntEGrpzi5lyj80vR5l2CTS3FwArH8udGc,814391
|
|
465
465
|
yt_dlp/extractor/lbry.py,sha256=gC9jRRo8wSXc1-6somhW13brAtmWGlJ5_Q0NMhZpKwk,18078
|
|
466
466
|
yt_dlp/extractor/lci.py,sha256=_0XuoITIt_QFA-6eBNpDXZZfouwUWfcdHQlpAOuiLEs,2131
|
|
467
467
|
yt_dlp/extractor/lcp.py,sha256=edMA8L-eJZLquDvHcSY4oFWI0C8yGgjqW1tmhhLMJ5U,2279
|
|
@@ -848,7 +848,7 @@ yt_dlp/extractor/syvdk.py,sha256=odhjQTYIDxWj2lS9Yr_MyFGfWmstxCeOSI7xUrYavs8,124
|
|
|
848
848
|
yt_dlp/extractor/sztvhu.py,sha256=2De4mY-V2E4CZQx8HzxnknL0f4_RIi5CTKdcvr4LV78,1616
|
|
849
849
|
yt_dlp/extractor/tagesschau.py,sha256=D6bXCOYeuXu6BW5hP8Yq5SzWVxMiGXcTennsszi7sZg,6189
|
|
850
850
|
yt_dlp/extractor/taptap.py,sha256=cI9Y1dSb_glOJlI6S_ttcXHsjwAC7XOPrSnzxGxulz8,10513
|
|
851
|
-
yt_dlp/extractor/tarangplus.py,sha256=
|
|
851
|
+
yt_dlp/extractor/tarangplus.py,sha256=66U7huxpnbHHqDs5fz3xiZ41aUeYWTqPkDTEw5gLJmA,8993
|
|
852
852
|
yt_dlp/extractor/tass.py,sha256=a5-1HR_xouhR8MEhNxMtzns_bR2LeP-6o4vOohmxIm8,1944
|
|
853
853
|
yt_dlp/extractor/tbs.py,sha256=QAjno1ds3lzjv8RTrCKGgWqxCsOrxfQ4I6WTlnMCWbc,7851
|
|
854
854
|
yt_dlp/extractor/tbsjp.py,sha256=FSSpDtu7QkK8c4TwSz5rYVWBD_L4SKZjQRtN8zs4LZw,7536
|
|
@@ -1051,7 +1051,7 @@ yt_dlp/extractor/youporn.py,sha256=Ijr1IR9B2x9tgSAcir5VgILiegTjoObqgbg_4HShbFQ,2
|
|
|
1051
1051
|
yt_dlp/extractor/zaiko.py,sha256=7m4J60ApM7bxDCCr1_D0vd9HKGnmcvT6WORwhF0bp78,6302
|
|
1052
1052
|
yt_dlp/extractor/zapiks.py,sha256=tBXg5sY1FYWX1_zFIKT3vfSKbBt_0IFvrdMqTdSs5C4,4048
|
|
1053
1053
|
yt_dlp/extractor/zattoo.py,sha256=appLwx81P87OOD2ucahw3eY4s75VzPcho6TrsUQ_mUw,29267
|
|
1054
|
-
yt_dlp/extractor/zdf.py,sha256=
|
|
1054
|
+
yt_dlp/extractor/zdf.py,sha256=_xg7M-o5ZQP4ov_neojOtqsq7YjlUtuxDyfNcCM2DIA,36250
|
|
1055
1055
|
yt_dlp/extractor/zee5.py,sha256=5ulXZGYqHW0UoX7bVxHMzlZ1hrmgMCfAgRKv-3-bdmc,11983
|
|
1056
1056
|
yt_dlp/extractor/zeenews.py,sha256=rxH5eNrCMBXkm0HM2ZG5zF5N8HPFUHFZ45J729EFjZw,3219
|
|
1057
1057
|
yt_dlp/extractor/zenporn.py,sha256=WnkN_cSf5CgxLGgmTvFUeywNTTNJuLblBwkdZYi2eNc,4807
|
|
@@ -1124,13 +1124,13 @@ yt_dlp/utils/progress.py,sha256=t9kVvJ0oWuEqRzo9fdFbIhHUBtO_8mg348QwZ1faqLo,3261
|
|
|
1124
1124
|
yt_dlp/utils/traversal.py,sha256=64E3RcZ56iSX50RI_HbKdDNftkETMLBaEPX791_b7yQ,18265
|
|
1125
1125
|
yt_dlp/utils/jslib/__init__.py,sha256=CbdJiRA7Eh5PnjF2V4lDTcg0J0XjBMaaq0H4pCfq9Tk,87
|
|
1126
1126
|
yt_dlp/utils/jslib/devalue.py,sha256=7DCGK_zUN0ZeV5hwPT06zaRMUxX_hyUyFWqs79rxw24,5621
|
|
1127
|
-
yt_dlp-2026.1.
|
|
1128
|
-
yt_dlp-2026.1.
|
|
1129
|
-
yt_dlp-2026.1.
|
|
1130
|
-
yt_dlp-2026.1.
|
|
1131
|
-
yt_dlp-2026.1.
|
|
1132
|
-
yt_dlp-2026.1.
|
|
1133
|
-
yt_dlp-2026.1.
|
|
1134
|
-
yt_dlp-2026.1.
|
|
1135
|
-
yt_dlp-2026.1.
|
|
1136
|
-
yt_dlp-2026.1.
|
|
1127
|
+
yt_dlp-2026.1.6.233142.dev0.data/data/share/bash-completion/completions/yt-dlp,sha256=b0pb9GLseKD27CjnLE6LlhVxhfmQjmyqV6r_CRbd6ko,5989
|
|
1128
|
+
yt_dlp-2026.1.6.233142.dev0.data/data/share/doc/yt_dlp/README.txt,sha256=AkKlzo4SvuJnf_2b22c63Fd3sBXHCVVWvgC5UwT3oko,165351
|
|
1129
|
+
yt_dlp-2026.1.6.233142.dev0.data/data/share/fish/vendor_completions.d/yt-dlp.fish,sha256=v2WQvWvk4qKpp2-97z2ULb5Msj5dgzU6nMkS-FwSmbM,51488
|
|
1130
|
+
yt_dlp-2026.1.6.233142.dev0.data/data/share/man/man1/yt-dlp.1,sha256=gxajtKE1RbgCtRJ604aAZjRwwHOuELlT1eUbgolpHF4,159920
|
|
1131
|
+
yt_dlp-2026.1.6.233142.dev0.data/data/share/zsh/site-functions/_yt-dlp,sha256=pNhu8tT4ZKrksLRI2mXLqarzGGhnOlm_hkCBVhSxLzg,5985
|
|
1132
|
+
yt_dlp-2026.1.6.233142.dev0.dist-info/METADATA,sha256=dHMuvrExhpr19pqp89UfOyYDwJFdgHoPkOSmgOt5-M4,180716
|
|
1133
|
+
yt_dlp-2026.1.6.233142.dev0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
1134
|
+
yt_dlp-2026.1.6.233142.dev0.dist-info/entry_points.txt,sha256=vWfetvzYgZIwDfMW6BjCe0Cy4pmTZEXRNzxAkfYlRJA,103
|
|
1135
|
+
yt_dlp-2026.1.6.233142.dev0.dist-info/licenses/LICENSE,sha256=fhLl30uuEsshWBuhV87SDhmGoFCN0Q0Oikq5pM-U6Fw,1211
|
|
1136
|
+
yt_dlp-2026.1.6.233142.dev0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yt_dlp-2026.1.5.233118.dev0.data → yt_dlp-2026.1.6.233142.dev0.data}/data/share/man/man1/yt-dlp.1
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{yt_dlp-2026.1.5.233118.dev0.dist-info → yt_dlp-2026.1.6.233142.dev0.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{yt_dlp-2026.1.5.233118.dev0.dist-info → yt_dlp-2026.1.6.233142.dev0.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|