Commit Graph

340 Commits (7d101c82a09ab96908fe33a63f75cd867e692b22)

Author SHA1 Message Date
felix c843e68588
[utils] Improve `js_to_json` comment regex
Capture the newline character as part of a single-line comment

From #497, Authored by: fstirlitz
4 years ago
pukkandan 981052c9c6 Some minor fixes and refactoring (see desc)
* [utils] Fix issues with reversal
* check_formats should catch `DownloadError`, not `ExtractorError`
* Simplify format selectors with `LazyList` and `yield from`
4 years ago
pukkandan 28419ca2c8
[utils] Improve `LazyList`
* Add `repr` and `str` that mimics `list`
* Add `reversed`. Unlike `[::-1]`, reversed does not exhaust the iterable and modifies the `LazyList` in-place
* Add tests
4 years ago
pukkandan 639f1cea92
Fix `%d` and empty default in outtmpl
Closes #388
4 years ago
felix cc52de4356
[cleanup] Point all shebang to `python3` (#372)
Authored by: fstirlitz
4 years ago
pukkandan bc6b9bcd65
[utils] Escape URLs in `sanitized_Request`, not `sanitize_url`
d2558234cf added escaping of URLs while sanitizing. However, `sanitize_url` may not always receive an actual URL.
Eg: When using `yt-dlp "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.
4 years ago
Hubert Hirtz 5435dcf96e
Handle Basic Auth `user:pass` in URLs
Fixes https://github.com/ytdl-org/youtube-dl/issues/20258, https://github.com/ytdl-org/youtube-dl/issues/26211
Authored by: hhirtz, pukkandan
4 years ago
colethedj 9e62f283ff
[utils] Add `datetime_from_str` to parse relative time (#221)
and `datetime_add_months` to accurately add/subtract months

Authored by: colethedj
4 years ago
Pccode66 7a5c1cfe93
Completely change project name to yt-dlp (#85)
* All modules and binary names are changed
* All documentation references changed
* yt-dlp no longer loads youtube-dlc config files
* All URLs changed to point to organization account

Co-authored-by: Pccode66
Co-authored-by: pukkandan
4 years ago
pukkandan 00dd0cd573 Update to ytdl-2021.01.08 5 years ago
pukkandan 29f7c58aaf Update to ytdl-2021.01.03 5 years ago
pukkandan 732044afb2 Add --write-*-link by h-h-h-h
Authored-by: h-h-h-h
5 years ago
pukkandan 8bdd16b499 Merge 'ytdl-org/youtube-dl/master' release 2020.11.19
Old Extractors left behind:
	VLivePlaylistIE
	YoutubeSearchURLIE
	YoutubeShowIE
	YoutubeFavouritesIE

If removing old extractors, make corresponding changes in
	docs/supportedsites.md
	youtube_dlc/extractor/extractors.py

Not merged:
	.github/ISSUE_TEMPLATE/1_broken_site.md
	.github/ISSUE_TEMPLATE/2_site_support_request.md
	.github/ISSUE_TEMPLATE/3_site_feature_request.md
	.github/ISSUE_TEMPLATE/4_bug_report.md
	.github/ISSUE_TEMPLATE/5_feature_request.md
	test/test_all_urls.py
	youtube_dlc/version.py
	Changelog
5 years ago
Unknown 39e7107d7f Merge branch 'ytdl-org-master' 5 years ago
Unknown 8ef153ee6f rot47 capital letters. 5 years ago
Unknown 3867038a06 renaming issues resolved 5 years ago
Unknown cefecac12c [skip travis] renaming
to avoid using same folder when using pip install for example
5 years ago
Sergey M․ 42db58ec73
[utils] Improve str_to_int 6 years ago
Remita Amine 348c6bf1c1 [utils] handle int values passed to str_to_int 6 years ago
Sergey M․ 1ced222120
[utils] Add generic caesar cipher and rot47 6 years ago
InfernalUnderling 9d30c2132a [utils] Handle rd-suffixed day parts in unified_strdate (#23199) 6 years ago
Sergey M․ 824fa51165
[utils] Improve subtitles_filename (closes #22753) 6 years ago
Sergey M․ 28cc2241e4
[utils] Restrict parse_codecs and add theora as known vcodec (#21381) 6 years ago
Sergey M․ 53cd37bac5
[utils] Improve strip_or_none 6 years ago
Jakub Wilk fd35d8cdfd [utils] Transliterate "þ" as "th" (#20897)
Despite visual similarity "þ" is unrelated to "p".
It is normally transliterated as "th":

    $ echo þ-Þ | iconv -t ASCII//TRANSLIT
    th-TH
6 years ago
Sergey M․ 5e1271c56d
[utils] Improve int_or_none and float_or_none (#20403) 6 years ago
Sergey M․ 0dc41787af
[utils] Introduce parse_bitrate 6 years ago
Sergey M․ fad4ceb534
[utils] Fix urljoin for paths with non-http(s) schemes 7 years ago
Sergey M․ 25d110be30
[utils] Properly recognize AV1 codec (closes #17506) 7 years ago
Sergey M․ af03000ad5
[utils] Introduce url_or_none 7 years ago
Sergey M․ e9c671d5e8
[utils] Allow JSONP with empty func name (closes #17028) 7 years ago
Enes 85750f8972 [openload] Improve ext extraction 7 years ago
Remita Amine 3bb3ff38a1 [test_utils] add tests for b836118724 7 years ago
Sergey M․ 6cc622327f
[utils] Introduce merge_dicts 7 years ago
Sergey M․ 1cc47c6674
[utils] Fix match_str for boolean meta fields 7 years ago
Philipp Hagemeister f226880c6d [tennistv] Add support for tennistv.com 7 years ago
Sergey M․ b871d7e954
[utils] Add parse_resolution 7 years ago
Sergey M․ befa4708fd
[utils] Fixup some common URL's typos in sanitize_url (closes #15649) 7 years ago
Sergey M․ c707b1d828
[test_utils] Add tests for malformed JSON handling in js_to_json 8 years ago
Mike Fährmann c384d537f8 [util] Improve scientific notation handling in js_to_json (closes #14789) 8 years ago
Sergey M․ b555ae9bf1
[utils] Add another date format pattern (#14999) 8 years ago
Sergey M․ 056653bbb1
[utils] Add support for zero years and months in parse_duration 8 years ago
Yen Chi Hsuan 3869028ffb [utils] Use bytes-like objects in dfxp2srt
This fixes handling of non-UTF8 TTML subtitles

Closes #14191
8 years ago
Yen Chi Hsuan 95f3f7c20a
[utils] Fix unescapeHTML for misformed string like "&a"" (#13935) 8 years ago
Sergey M․ 5b232f46dc
[utils] Skip missing params in cli_bool_option (closes #13865) 8 years ago
Sergey M․ dee2ff1d81
[test_utils] Fix tests under Windows 8 years ago
Yen Chi Hsuan 609ff8ca19 [utils] Support attributes with no values in get_elements_by_attribute() 8 years ago
Sergey M․ b4a3d461e4
[utils] Handle HTMLParseError in extract_attributes (closes #13349) 8 years ago
Sergey M․ 2ae2ffda5e
[utils] Improve unified_timestamp 8 years ago
Yen Chi Hsuan 5552c9eb0f
[utils] Recognize more patterns in strip_jsonp()
Used in Youku Show pages
8 years ago
Yen Chi Hsuan 0c26548601
[cda] Implement birthday verification (closes #12789) 8 years ago
Sergey M․ deef31955b
[utils] Improve unified_timestamp
Seen at http://zaq1.pl/video/xev0e
8 years ago
Tithen-Firion 9222d94510 [test_utils] Add one more clean_html test 8 years ago
Remita Amine 5b995f713b [utils] add support for ttml styles 8 years ago
Sergey M․ a426ef6d78
[test_utils] Do not use dash in env variables' names 8 years ago
Sergey M․ 41c5e60dd5
[test_utils] Fix expand_path tests 8 years ago
Sergey M․ 51098426b8
[utils] Introduce expand_path 8 years ago
Sergey M․ 4b5de77bdb
[utils] Process bytestrings in urljoin (closes #12369) 8 years ago
Yen Chi Hsuan f48409c7ac [utils] Add pkcs1pad
Used in daisuki.net (#4738)
8 years ago
Thomas Christlieb 2af12ad9d2 Introduce get_elements_by_class and get_elements_by_attribute utility functions 9 years ago
Sergey M․ 4195096ea8
[utils] Improve comments processing in js_to_json (closes #11947) 9 years ago
Michal Čihař b3ee552e4b
[utils] Handle single-line comments in js_to_json 9 years ago
Sergey M․ 15846398ca
[utils] Improve parse_duration 9 years ago
Sergey M․ cb655f34fb
[utils] Add more date formats 9 years ago
Remita Amine 7fe1592073 [common] fix dash codec information for mixed videos and fragment url construction(#11490) 9 years ago
Sergey M․ b0c65c677f
[utils] Improve urljoin 9 years ago
Sergey M․ e34c33614d
[utils] Add convenience urljoin 9 years ago
Yen Chi Hsuan 582be35847
Update coding style after pycodestyle 2.1.0
In pycodestyle 2.1.0, E305 was introduced, which requires two blank
lines after top level declarations, too.

See https://github.com/PyCQA/pycodestyle/issues/400

See also #10689; thanks @stepshal for first mentioning this issue and
initial patches
9 years ago
Sergey M․ 02dc0a36b7
[utils] Introduce base_url 9 years ago
Sergey M․ c6eed6b8c0
[utils] Lower priority for rare date formats and add tests 9 years ago
Sergey M․ 3e4185c396
[utils] Use native french month names 9 years ago
Sergey M․ f6717dec8a
[utils] Improve month_by_name and add tests 9 years ago
Sergey M․ 6562d34a8c
[utils] Improve mimetype2ext 9 years ago
Yen Chi Hsuan 70852b47ca
[utils] Recognize units with full names in parse_filename
Reference: https://en.wikipedia.org/wiki/Template:Quantities_of_bytes
9 years ago
Yen Chi Hsuan e4659b4547
[utils] Correct octal/hexadecimal number detection in js_to_json 9 years ago
Sergey M․ 13585d7682
[utils] Recognize lowercase units in parse_filesize 9 years ago
Remita Amine 5f2c2b7936 [test_utils] add test for option with not str value 9 years ago
Sergey M․ a8795327ca
[utils] Add support TV Parental Guidelines ratings in parse_age_limit 9 years ago
Yen Chi Hsuan 7dc2a74e0a
[utils] Fix unified_timestamp for formats parsed by parsedate_tz() 9 years ago
Yen Chi Hsuan 0b68de3cc1 Merge pull request #8876 from remitamine/html5_media
[extractor/common] add helper method to extract html5 media entries
9 years ago
Yen Chi Hsuan 84c237fb8a
[utils] Add get_element_by_class
For #9950
9 years ago
Remita Amine dfaa86b75e [test_utils] add test for smuggling a smuggled url 9 years ago
remitamine 4f3c5e0627 [utils] add helper function for parsing codecs 9 years ago
Yen Chi Hsuan 1143535d76
[utils] Add urshift()
Used in IqiyiIE and LeIE
9 years ago
Sergey M․ 46f59e89ea
[utils] Add unified_timestamp 9 years ago
Yen Chi Hsuan 47212f7bcb
[utils] Don't transform numbers not starting with a zero
Fix test_Viidea and maybe others
9 years ago
Yen Chi Hsuan 55b2f099c0
[utils] Decode HTML5 entities
Used in test_Vporn_1. Also related to #9270
9 years ago
bzc6p b96f007eeb Added sanitization support for Hungarian letters Ő and Ű 9 years ago
Sergey M․ 46bc9b7d7c
[utils] Allow None in remove_{start,end} 9 years ago
Sergey M․ 364cf465dd
[test_utils] PEP 8 9 years ago
Sergey M․ 89ac4a19e6
[utils] Process non-base 10 integers in js_to_json 9 years ago
felix bd1e484448
[utils] js_to_json: various improvements
now JS object literals like { /* " */ 0: ",]\xaa<\/p>", } will be correctly converted to JSON.
9 years ago
Yen Chi Hsuan 778a1ccca7
[utils] Add Œ and œ found in French to ACCENT_CHARS
Fixes #9463
9 years ago
Yen Chi Hsuan dab0daeeb0
[utils,compat] Move struct_pack and struct_unpack to compat.py 9 years ago
Adam Thalhammer 31c4448f6e Instead of replacing accented characters with an underscore when sanitizing file names in restricted mode, replace them with their non-accented equivalents fixes #9347 9 years ago
Adam Thalhammer 79a2e94e79 Instead of replacing accented characters with an underscore when sanitizing file names in restricted mode, replace them with their non-accented equivalents fixes #9347 9 years ago
Sergey M b6c0d4f431 Merge pull request #9110 from remitamine/parse_duration
[utils] imporove parse_duration to handle more formats
9 years ago
remitamine acaff49575 [utils] imporove parse_duration to handle more formats 9 years ago
Jaime Marquínez Ferrándiz eb9c3edd5e [test/utils] Add test for date_from_str 9 years ago
Yen Chi Hsuan 81f36eba88 [test/test_utils] Update for escape_url change (again) 9 years ago
Yen Chi Hsuan 2d60465e44 [test/test_utils] Update for escape_url change 9 years ago
Jaime Marquínez Ferrándiz 782b1b5bd1 [utils] lookup_unit_table: Match word boundary instead of end of string 9 years ago
Sergey M․ c5229f3926 [utils] PEP 8 9 years ago
remitamine 83548824c2 Merge pull request #8092 from bpfoley/twitter-thumbnail
[utils] Add extract_attributes for extracting html tag attributes
9 years ago
Sergey M․ fb47597b09 [bbc] Generalize unit table lookup and add parse_count 9 years ago
remitamine 3201a67f61 [test/test_utils] add more tests for update_url_query 9 years ago
remitamine fb640d0a3d [test/test_utils] add tests for update_url_query 9 years ago
Brian Foley 8bb56eeeea [utils] Add extract_attributes for extracting html tag attributes
This is much more robust than just using regexps, and handles all
the common scenarios, such as empty/no values, repeated attributes,
entity decoding, mixed case names, and the different possible value
quoting schemes.
9 years ago
Yen Chi Hsuan 5eb6bdced4 [utils] Multiple changes to base_n()
1. Renamed to encode_base_n()
2. Allow tables longer than 62 characters
3. Raise ValueError instead of AssertionError for invalid input data
4. Return the first character in the table instead of '0' for number 0
5. Add tests
9 years ago
Sergey M․ f160785c5c [utils] Remove AM/PM from unified_strdate patterns 9 years ago
Yen Chi Hsuan 5bc880b988 [utils] Add OHDave's RSA encryption function 9 years ago
Sergey M․ 8411229bd5 [utils] Allow dot in strip_jsonp 10 years ago
Sergey M․ 86296ad2cd [utils] Add ability to control skipping false values in dict_get 10 years ago
Sergey M․ cbecc9b903 [utils] Add dict_get convenience method 10 years ago
Sergey M․ 6b77d52b1f [test_utils] Add tests for encode_compat_str 10 years ago
Yen Chi Hsuan db2fe38b55 [utils] Support alternative timestamp format in TTML
Fixes #7608
10 years ago
Yen Chi Hsuan d631d5f9f2 [utils] Fix TTML conversion
Tolerate invalid timestamps (closes #7909)
10 years ago
Sergey M․ 31b2051e21 [utils] Add remove_quotes 10 years ago
Sergey M․ 9cb9a5df77 [utils] Check ext with trailing slash against the list of known extensions 10 years ago
Sergey M․ 5035536e3f [test_utils] Add tests for determine_ext 10 years ago
Sergey M․ 7aefc49c40 [utils] Skip invalid/non HTML entities (Closes #7518) 10 years ago
Jaime Marquínez Ferrándiz 6a75040278 [utils] unified_strdate: Return None if the date format can't be recognized (fixes #7340)
This issue was introduced with ae12bc3ebb, it returned 'None'.
10 years ago
Sergey M 30eecc6a04 Merge pull request #7296 from jaimeMF/xml_attrib_unicode
Use a wrapper around xml.etree.ElementTree.fromstring in python 2.x (…
10 years ago
Sergey M․ 578c074575 [utils] Support list of xpath in xpath_element 10 years ago
Sergey M․ 52c3a6e49d [utils] Improve parse_iso8601 10 years ago
Jaime Marquínez Ferrándiz 36e6f62cd0 Use a wrapper around xml.etree.ElementTree.fromstring in python 2.x (#7178)
Attributes aren't unicode objects, so they couldn't be directly used in info_dict fields (for example '--write-description' doesn't work with bytes).
10 years ago
Sergey M․ d01949dc89 [utils:js_to_json] Fix bad escape in double quoted strings 10 years ago
Sergey M․ f71264490c [test_utils] Add tests for cli option converters 10 years ago
Sergey M․ 87f70ab39d [test_utils] Add more tests for xpath 10 years ago
Sergey M․ ee114368ad [utils] Make value optional for find_xpath_attr
This allows selecting particular attributes by name but without specifying the value and similar to xpath syntax `[@attrib]`
10 years ago
Yen Chi Hsuan 9c29bc69f7 [utils] Improve parse_duration
Now dots are parsed. For example '87 Min.'
10 years ago
Yen Chi Hsuan 1b0427e6c4 [utils] Support TTML without default namespace
In a strict sense such TTML is invalid, but Yahoo uses it.
10 years ago
Yen Chi Hsuan 7dff03636a [utils] Support 'dur' field in TTML 10 years ago
Yen Chi Hsuan d39e0f05db [utils] Remove sanitize_url_path_consecutive_slashes()
This function is used only in SohuIE, which is updated to use a new
extraction logic.
10 years ago
Yen Chi Hsuan 0fe2ff78e6 [NBC] Enhance embedURL extraction (closes #2549) 10 years ago
Sergey M․ b3ed15b760 [utils] Add replace_extension 10 years ago
Sergey M․ a4bcaad773 [test_utils] Add tests for prepend_extension 10 years ago
Yen Chi Hsuan bf6427d2fb [ffmpeg] Add dfxp (TTML) subtitles support (#3432, #5146) 10 years ago
Yen Chi Hsuan 0a1603634b [utils] Remove url_infer_protocol 10 years ago
Yen Chi Hsuan 418c5cc3fc [udn] Add new extractor 10 years ago
Sergey M․ 8cf70de428 [test_utils] Add test for unified_strdate 10 years ago
Sergey M․ ba9e68f402 [utils] Drop trailing comma before closing brace 10 years ago
Naglis Jonaitis 91757b0f37 [utils] Escape all HTML entities written in hexadecimal form 10 years ago
Jaime Marquínez Ferrándiz 5379a2d40d [test/utils] Test xpath_text 10 years ago
Sergey M․ 92a4793b3c [utils] Place sanitize url function near other sanitizing functions 10 years ago
Sergey M․ dc03a42537 Merge branch 'sohu_fix' of https://github.com/yan12125/youtube-dl into yan12125-sohu_fix 10 years ago
Sergey M․ 2ebfeacabc [utils] Keep dot and dotdot unmodified (Closes #5171) 10 years ago
Sergey M․ f18ef2d144 [utils] Disallow trailing dot in sanitize_path for a path part 10 years ago
Sergey M․ a2aaf4dbc6 [utils] Add sanitize_path 10 years ago
Yen Chi Hsuan 55969016e9 [utils] Add a function to sanitize consecutive slashes in URLs 10 years ago