e102b9993a
[workflows/ci.yml] Move pinned Ubuntu runner images from withdrawn 20.4 to 22.04
dirkf
2025-05-03 18:33:39 +01:00
680069a149
[YouTube] Improve n-sig function extraction for player aa3fc80b
dirkf
2025-05-02 13:49:05 +01:00
4a31290ae1
[YouTube] Delete cached problem nsig cache data on descrambling error
dirkf
2025-05-02 13:38:32 +01:00
3a42f6ad37
[YouTube] Cache signature timestamp from player JS
dirkf
2025-05-02 13:31:45 +01:00
ec75141bf0
[Cache] Add clear function
dirkf
2025-05-02 13:17:18 +01:00
c052a16f72
[JSInterp] Add tests and relevant functionality from yt-dlp * thx seproDev, bashonly: yt-dlp/yt-dlp#12760, yt-dlp/yt-dlp#12761: - Improve nested attribute support - Pass global stack when extracting objects - interpret_statement: Match attribute before indexing - Fix assignment to array elements with nested brackets - Add new signature tests - Invalidate JS function cache - Avoid testdata dupes now that we cache by URL
dirkf
2025-04-04 12:53:28 +01:00
cedeeed56f
[cache] Align further with yt-dlp * use compat_os_makedirs * support non-ASCII characters in cache key * improve logging
dirkf
2025-04-04 04:42:14 +01:00
add4622870
[compat] Add compat_os_makedirs * support exists_ok parameter in Py < 3.2
dirkf
2025-04-04 04:09:56 +01:00
9a6ddece4d
[core] Refactor message routines to align better with yt-dlp * in particular, support only_once in the same methods
dirkf
2025-04-04 04:04:01 +01:00
3eb8d22ddb
[JSInterp] Temporary fix for #33102
dirkf
2025-03-31 04:21:09 +01:00
4e714f9df1
[Misc] Correct [_]IE_DESC/NAME in a few IEs * thx seproDev, yt-dlp/yt-dlp/pull/12694/commits/ae69e3c * also add documenting comment in InfoExtractor
dirkf
2025-03-26 12:47:19 +00:00
c1ea7f5a24
[ITV] Mark ITVX not working * update old shim * correct [_]IE_DESC
dirkf
2025-03-26 12:17:49 +00:00
2b4fbfce25
[YouTube] Support player 4fcd6e4a thx seproDev, bashonly: yt-dlp/yt-dlp#12748
dirkf
2025-03-26 02:27:25 +00:00
1bc45b8b6c
[JSInterp] Use , for join() with null/undefined argument Eg: [1,2,3].join(null) -> '1,2,3'
dirkf
2025-03-25 22:30:08 +00:00
087d865230
[YouTube] Support new player URL patterns
dirkf
2025-03-25 22:14:08 +00:00
a4fc1151f1
[JSInterp] Improve indexing * catch invalid list index with ValueError (eg [1, 2]['ab'] -> undefined) * allow assignment outside existing list (eg var l = [1,2]; l[9] = 0;)
dirkf
2025-03-25 21:56:32 +00:00
a464c159e6
[YouTube] Make _extract_player_info() use _search_regex()
dirkf
2025-03-25 21:49:21 +00:00
7dca08eff0
[YouTube] Also get original of translated automatic captions
dirkf
2025-03-25 21:41:15 +00:00
2239ee7965
[YouTube] Get subtitles/automatic captions from both web and API responses
dirkf
2025-03-25 21:39:31 +00:00
da7223d4aa
[YouTube] Improve support for tce-style player JS * improve extraction of global "useful data" Array from player JS * also handle tv-player and add tests: thx seproDev (yt-dlp/yt-dlp#12684)
dirkf
2025-03-21 16:26:25 +00:00
283dca56fe
[YouTube] Initially support tce-style player JS * resolves#33079
dirkf
2025-03-07 21:02:28 +00:00
422b1b31cf
[YouTube] Temporarily redirect from tce-style player JS
dirkf
2025-03-07 20:00:58 +00:00
1dc27e1c3b
[JSInterp] Make indexing error handling more conformant * by default TypeError -> undefined, else raise * set allow_undefined=True/False to override
dirkf
2025-03-07 19:40:53 +00:00
af049e309b
[JSInterp] Handle undefined, etc, passed to JS_RegExp and Exception
dirkf
2025-03-07 19:37:56 +00:00
94849bc997
[JSInterp] Improve Date processing * add JS_Date class implementing JS Date * support constructor args other than date string * support static methods of Date * Date objects are still automatically coerced to timestamp before using in JS.
dirkf
2025-03-07 19:32:56 +00:00
974c7d7f34
[compat] Fix inheriting from compat_collections_chain_map * see ytdl-org/youtube-dl#33079#issuecomment-2704038049
dirkf
2025-03-07 19:17:18 +00:00
8738407d77
[compat] Support zstd Content-Encoding * see RFC 8878 7.2
dirkf
2025-03-02 13:36:05 +00:00
cecaa18b80
[compat] Clean-up * make workaround_optparse_bug9161 private * add comments * avoid leaving test objects behind
dirkf
2025-03-07 23:03:17 +00:00
711e72c292
[JSInterp] Fix bit-shift coercion for player 9c6dfc4a
dirkf
2025-02-06 21:09:00 +00:00
26b6f15d14
[compat] Make casefold private * if required, not supported: from youtube_dl.casefold import _casefold as casefold
dirkf
2025-02-03 18:10:15 +00:00
5975d7bb96
[YouTube] Use X-Goog-Visitor-Id * required with tv player client * resolves#33030
dirkf
2025-01-22 06:52:40 +00:00
63fb0fc415
[YouTube] Retain .videoDetails members from all player responses
dirkf
2025-01-20 13:23:54 +00:00
b09442a2f4
[YouTube] Also use ios client when is_live
dirkf
2025-01-19 01:18:34 +00:00
55ad8a24ca
[YouTube] Support ... /feeds/videos.xml?playlist_id={pl_id}
dirkf
2025-01-15 03:22:56 +00:00