Commit Graph

18861 Commits (c5098961b04ce83f4615f2a846c84f803b072639)
 

Author SHA1 Message Date
dirkf 211cbfd5d4 [jsinterp] Minimally handle arithmetic operator precedence
Resolves #32066
2 years ago
dirkf 26035bde46 [DashSegmentsFD] Correctly detect errors when `fragment_retries` == 0
* use the success flag instead of the retry count
* establish the fragment_url outside the retry loop
* only report skipping a fragment once.
* resolves #32033
2 years ago
dirkf 2da3fa04a6 [YouTube] Simplify signature patterns 2 years ago
Gabriel Nagy 735e87adfc
[core] Sanitize info dict before dumping JSON (fixes fe7e130) (#32032)
* follow up to fe7e130 which didn't fix everything.

Co-authored-by: dirkf <fieldhouse@gmx.net>
2 years ago
dirkf fe7e13066c [core] Add and use sanitize_info() method from yt-dlp 2 years ago
dirkf 213d1d91bf [core] No longer importing copy 2 years ago
dirkf f8253a5289 [core] Avoid deepcopy of ctx dict (fix f35b757) (Pt 2) 2 years ago
dirkf d6ae3b77cd [core] Avoid deepcopy of ctx dict (fix f35b757)
* may now contain `LazyList`s
* resolves #31999
2 years ago
dirkf 9f4d83ff42 [options] Add --mtime option, unsets default --no-mtime
* resolves #1709 (!)
2 years ago
dirkf 25124bd640 [devscripts] Improve hack to convert command-line options to API options
* define equality for DateRange
* don't show default DateRange
2 years ago
dirkf 78da22489b [compat] Add and use `compat_open()` like Py3 `open()`
* resolves FIXME: ytdl-org/youtube-dl/commit/dfe5fa4
2 years ago
dirkf 557dbac173 [FragmentFD] Fix iteration with infinite limit
* fixes ytdl-org/youtube-dl/baa6c5e
* resolves #31885
2 years ago
dirkf cdf40b6aa6 [test] Update tests for Ubuntu 20.04
* 18.04 test runner was withdrawn
* for now, disable Py 3.3/3.4 tests
2 years ago
pukkandan 3f6d2bd76f [extractor/youtube] Bypass throttling for `-f17`
and related cleanup

Thanks @AudricV for the finding

Ref: yt-dlp/yt-dlp/commit/c9abebb
2 years ago
pukkandan 88f28f620b [extractor/youtube] Construct fragment list lazily
Ref: yt-dlp/yt-dlp/commit/e389d17
See: yt-dlp/yt-dlp#6517
2 years ago
dirkf f35b757c82 [utils] Ensure `allow_types` for `variadic()` is a tuple 2 years ago
dirkf 45495228b7 [downloader/http] Only check for resumability when actually resuming 2 years ago
dirkf 6fece0a96b [AENetworksBaseIE] Report missing show data instead of crash 2 years ago
dirkf 70ff013910 [devscripts] Add a hack to convert command-line options to API options 2 years ago
dirkf e8de54bce5 [core] Handle `/../` sequences in HTTP URLs
* use Python's RFC implementation for embedded sequences
* hack: strip unbalanced leading `../` from path, like eg Firefox

See https://github.com/yt-dlp/yt-dlp/issues/3355
2 years ago
dirkf baa6c5e95c [FragmentFD] Respect `--no-continue`
* discard partial fragment on `--no-continue`
* continue with correct progress display otherwise

Resolves #21467
2 years ago
dirkf 5c985d4f81 [downloader] Let _ffmpeg_ handle DASH segments
Fixes https://github.com/ytdl-org/youtube-dl/issues/31792 after 3da1783.
2 years ago
dirkf 8c86fd33dc
[doc] Improve "guidance" on bug reporting 2 years ago
Sophira 27d41d7365
[doc] Recommend "Get cookies.txt LOCALLY" extension in README.md (#31763)
* remove link to suspect "Get cookies.txt" extension, dropped from Chrome store
* link to new Manifest V3-compatible open-source "Get cookies.txt LOCALLY" extension.

Fixes #31465.
2 years ago
dirkf 0402710227 [jsinterp] Fix regexp parsing and .replace[All] method
* For performance, make regexp object instantiation lazy
 * Other small performance improvements
2 years ago
pukkandan 3e92c60fcd [jsinterp] Handle `Date` at epoch 0
See yt-dlp/yt_dlp#6400
2 years ago
pukkandan 3da17834a4 [Youtube] Construct dash formats with `range` query
See yt-dlp/yt_dlp#6369
2 years ago
dirkf f7ce98a21e [YouTube] Support @owner format in uploader_id etc
* implement https://github.com/ytdl-org/youtube-dl/issues/31530#issuecomment-1435734719
* update affected tests
* misc clean-ups
2 years ago
dirkf e67e52a8f8 [test] Support test-case with volatile ID (eg live show)
Signalled by regexp ID value, eg: `'id': r're:[\da-zA-Z_-]{8,}'`
2 years ago
pukkandan 1d3751c3fe Escape URLs in `sanitized_Request`, not `sanitize_url` d2558234cf5dd12d6896eed5427b7dcdb3ab7b5a added escaping of URLs while sanitizing. However, `sanitize_url` may not always receive an actual URL. Eg: When using `youtube-dl "search query" --default-search ytsearch`, `search query` gets escaped to `search%20query` before being prefixed with `ytsearch:` which is not the intended behavior. So the escaping is moved to `sanitized_Request` instead. 2 years ago
df 6067451e43 [Vimeo] Fix e19ec52 for tween-age Pythons
* a check in older Pythons in the 2.7 and earlier, 3.3, 3.4 series caused "sre_constants.error: nothing to repeat"
* satisfy the check by avoiding nested qualifiers that can match empty string

Resolves #31597
2 years ago
dirkf 57802e632f [jsinterp] Fix dict comprehension for Py2.6
Resolves #31600
2 years ago
dirkf 2dd6c6edd8
[YouTube] Avoid crash if uploader_id extraction fails
See #31530.
2 years ago
dirkf dd9aa74bee [test] Avoid name TestIE which causes a pytest warning
See: 060ac76257
2 years ago
dirkf 42b098dd79 [InfoExtractor] Handle unquoted values in OpenGraph searches 2 years ago
fonkap 6f8c2635a5 [StreamsbIE] Add extractor for streamsb.com (viewsb.com) (#31517)
* Add extractor for streamsb.com (viewsb.com)

* make data url using app.js version

---------

Co-authored-by: dirkf <fieldhouse@gmx.net>
2 years ago
fonkap de48105dd8 [KommunetvIE] Add extractor for kommunetv.no (#31516)
* Add extractor for kommunetv.no
* Using utils.update_url instead of regex

---------

Co-authored-by: dirkf <fieldhouse@gmx.net>
2 years ago
fonkap 822f19f05d [FileMoonIE] Add extractor for filemoon.sx (#31515)
---------

Co-authored-by: dirkf <fieldhouse@gmx.net>
2 years ago
teddy171 33db85c571 [feat]: Add support to external downloader aria2p (#31500)
* feat: add class Aria2pFD

* feat: create call_downloader function

* feat: a colorful download interface to aria2pFD

* feat: change value name

* Apply suggestions from code review

Co-authored-by: dirkf <fieldhouse@gmx.net>

* Typo in suggestion

* fix: remove unused value

* fix: add not function to return value(0 is normal); add total_seconds to download.eta(timedelta object); add waiting status when hook progress

* fix: remove unuse method ..utils.format_bytes

* fix: be up to flake8

* fix: be up to flake8

* Apply suggestions from code review

* [feat] test external downloader aria2p

* [feat] test external downloader aria2p

* [fix] test_external_downloader.py

* Apply suggestions from code review

Co-authored-by: dirkf <fieldhouse@gmx.net>

* Apply suggestions from code review

Co-authored-by: dirkf <fieldhouse@gmx.net>

* Update test/test_external_downloader.py

Co-authored-by: dirkf <fieldhouse@gmx.net>

* Update test/test_external_downloader.py

Co-authored-by: dirkf <fieldhouse@gmx.net>

* Update youtube_dl/downloader/external.py

Co-authored-by: dirkf <fieldhouse@gmx.net>

* refactoring code and fix bugs

* Apply suggestions from code review

* Rename test_external_downloader.py to test_downloader_external.py

---------

Co-authored-by: dirkf <fieldhouse@gmx.net>
2 years ago
Valentin Metz f33923cba7 [rbgtum] Add new extractor (#31305)
* [rbgtum] Add new extractor

* Small update, force CI

---------

Co-authored-by: dirkf <fieldhouse@gmx.net>
2 years ago
dirkf e8198c517b [YouTube] Fix tests 2 years ago
dirkf bafb6dec72 [YouTube] Refresh compat/utils usage
* import parse_qs()
* import parse_qs in lazy_extractors (clears old TODO)
* clean up old compiled lazy_extractors for Py2
* use update_url()
2 years ago
dirkf 4e04f10499 [compat] Update test_compat
[skip ci]
2 years ago
dirkf 90c9f789d9 [utils] Add parse_qs, update_url
[skip ci]
2 years ago
dirkf 249f2b6316 [compat] Systematise compat_ naming
[skip ci]
2 years ago
dirkf d6b14ba316 [test] Fix TestAgeRestriction
* age restriction may cause DownloadError
* update obsolete test URLs
[skip ci]
2 years ago
dirkf 30e986b834 [YouTube] Add `signatureTimestamp` for age-gate bypass 2 years ago
dirkf 58988c1421 [YouTube] Bypass age-gating for certain restricted videos
* Use TVHTML5_SIMPLY_EMBEDDED_PLAYER client

* Also add and fix tests

* Introduce and use new utility function `update_url()`
2 years ago
dirkf e19ec52322 [Vimeo] Support /user{video_id}/{slug} URL format 2 years ago
dirkf f2f90887ca [Vimeo] Fix `Unable to extract info section` redux
* as reported in yt-dlp/yt-dlp#6149
* also allow newline in target JSON object
2 years ago