Commit Graph

1114 Commits (ea5ca8e7fcf348a40e3eda70738738739123bded)

Author SHA1 Message Date
Sergey M․ 84213ea8d4
[youtube] Extract chapters from JSON (closes #24819) 5 years ago
Sergey M․ c380cc28c4
[utils] Improve cookie files support
+ Add support for UTF-8 in cookie files
* Skip malformed cookie file entries instead of crashing (invalid entry len, invalid expires at)
5 years ago
Sergey M․ e40c758c2a
[youtube] Improve player id extraction and add tests 5 years ago
Sergey M․ 042b664933
Revert "[utils] Add support for cookies with spaces used instead of tabs"
According to [1] TABs must be used as separators between fields.
Files produces by some tools with spaces as separators are considered
malformed.

1. https://curl.haxx.se/docs/http-cookies.html

This reverts commit cff99c91d1.
5 years ago
Sergey M․ cff99c91d1
[utils] Add support for cookies with spaces used instead of tabs 5 years ago
Sergey M․ ea17979d83
[test_subtitles] Remove obsolete test 5 years ago
Sergey M․ 4e9e1e240d
[test_YoutubeDL] Add tests for #10591 (closes #23873) 5 years ago
Sergey M․ e0abaab293
[test_YoutubeDL] Fix get_ids 5 years ago
Sergey M․ 42db58ec73
[utils] Improve str_to_int 5 years ago
Remita Amine 348c6bf1c1 [utils] handle int values passed to str_to_int 5 years ago
Sergey M․ 1ced222120
[utils] Add generic caesar cipher and rot47 5 years ago
InfernalUnderling 9d30c2132a [utils] Handle rd-suffixed day parts in unified_strdate (#23199) 5 years ago
Remita Amine 237513e801 [yahoo] restore support for cbs suffixed URLs 5 years ago
Sergey M․ 824fa51165
[utils] Improve subtitles_filename (closes #22753) 5 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
Sergey M․ 3089bc748c
Fix W504 and disable W503 (closes #20863) 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․ d493f15c11
[extractor/common] Improve HTML5 entries extraction and add some realworld tests 6 years ago
Sergey M․ 0dc41787af
[utils] Introduce parse_bitrate 6 years ago
Sergey M․ 2e27421c70
[test_InfoExtractor] Add test for #20346 6 years ago
Sergey M․ 067aa17edf
Start moving to ytdl-org 6 years ago
Sergey M․ fca9baf0da
[test] Fix test_compat_etree_Element 6 years ago
Sergey M․ 399f76870d
[compat] Introduce compat_etree_Element 6 years ago
remitamine e7e62441cd [utils] strip #HttpOnly_ prefix from cookies files (#20219) 6 years ago
Ales Jirasek 22f5f5c6fc
[malltv] Add extractor (closes #18058) 6 years ago
Sergey M․ e118a8794f
[YoutubeDL] Fix typo in string negation implementation and add more tests (closes #18961) 6 years ago
Sergey M․ fad4ceb534
[utils] Fix urljoin for paths with non-http(s) schemes 6 years ago
Remita Amine fc746c3fdd [test/test_InfoExtractor] add test for #18923 6 years ago
Sergey M․ 2cc779f497
[YoutubeDL] Add negation support for string comparisons in format selection expressions (closes #18600, closes #18805) 6 years ago
Sergey M․ a16c7c033a
[test/helper] Add support for maxcount and count collection len test checkers 6 years ago
Sergey M․ 6e29458f24
[test/testdata/cookies/session_cookies.txt] Fix empty expires test data 6 years ago
Sergey M․ 9e02c2c704
[YoutubeDLCookieJar] Add test for keeping session cookies 6 years ago
Sergey M․ 6864855eb1
[tests] Fix invalid escape sequences 6 years ago
Xiao Di Guan 95e42d7336 [extractor/common] Ensure response handle is not prematurely closed before it can be read if it matches expected_status (resolves #17195, closes #17846, resolves #17447) 6 years ago
Sergey M․ 25d110be30
[utils] Properly recognize AV1 codec (closes #17506) 6 years ago
Sergey M․ af03000ad5
[utils] Introduce url_or_none 6 years ago
Sergey M․ e9c671d5e8
[utils] Allow JSONP with empty func name (closes #17028) 6 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
Dan Salmon 518d5ba519 Fix some tests 7 years ago
Sergey M․ 47a5cb7734
Generalize XML manifest processing code and improve XSPF parsing (closes #15794) 7 years ago
Ricardo Constantino 96b8b9abae
[extractor/generic] Support relative URIs in _parse_xspf
<location> can have relative URIs, not just absolute.
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․ 6fcc053947
[test_downloader_http] Use try_rm 7 years ago
Sergey M․ f19eae429a
[test_http] Use 127.0.0.1 instead of localhost 7 years ago
Sergey M․ ba515388b8
Introduce --http-chunk-size 7 years ago
squibbysquibby 655c410063 [test_download] Fix download tests for lazy extractors (closes #13554, closes #13757) 7 years ago
Sergey M․ c707b1d828
[test_utils] Add tests for malformed JSON handling in js_to_json 7 years ago
Mike Fährmann c384d537f8 [util] Improve scientific notation handling in js_to_json (closes #14789) 7 years ago
Sergey M․ 9d6ac71c27
[extractor/common] Fix extraction of DASH formats with the same representation id (closes #15111) 7 years ago
Sergey M․ b555ae9bf1
[utils] Add another date format pattern (#14999) 7 years ago
Sergey M․ 78593e294c
Add references for #14844 7 years ago
Petr Novak 41bf647e89
[extractor/common] Add support for DASH manifests with SegmentLists with bare SegmentURLs 7 years ago
Yen Chi Hsuan f58a506044 [test_InfoExtractor] Fix flake8 7 years ago
Sergey M․ d08dcd2dbd
[test_YoutubeDL] Fix typo (closes #14856) 7 years ago
Sergey M․ 181e381fda
[test_InfoExtractor] Add test for #14660 7 years ago
Sergey M․ 056653bbb1
[utils] Add support for zero years and months in parse_duration 7 years ago
Sergey M․ af0f74288d
[YoutubeDL] Improve _default_format_spec (closes #14461) 7 years ago
Sergey M․ cd6fc19ed7
[YoutubeDL] Ignore duplicates in --playlist-items
E.g. '--playlist-items 2-4,3-4,3' should result in '[2,3,4]', not '[2,3,4,3,4,3]'
7 years ago
Sergey M․ 86a15ed64b
[test_YoutubeDL] Add test for #14425 7 years ago
Yen Chi Hsuan 3869028ffb [utils] Use bytes-like objects in dfxp2srt
This fixes handling of non-UTF8 TTML subtitles

Closes #14191
7 years ago
Yen Chi Hsuan 95f3f7c20a
[utils] Fix unescapeHTML for misformed string like "&a&quot;" (#13935) 7 years ago
Sergey M․ 4850478543
[extractor/common] Add support for float durations in _parse_mpd_formats (closes #13919) 7 years ago
Sergey M․ 5b232f46dc
[utils] Skip missing params in cli_bool_option (closes #13865) 7 years ago
Sergey M․ 8cda78ef72
[test_YoutubeDL] Add a test for #10083 7 years ago
Yen Chi Hsuan 73095e013f
[options] Typo 7 years ago
Yen Chi Hsuan 905d18a7aa
[options] Correctly hide login info from debug outputs (#13696)
Iterate over opts instead of PRIVATE_OPTS for both performance and
correctness
7 years ago
Sergey M․ 0017d9ad6d
[YoutubeDL] Improve default format specification (closes #13704) 7 years ago
Sergey M․ 0396806f67
[YoutubeDL] Do not override id, extractor and extractor_key in url_transparent
All these meta fields must be borrowed from final extractor that actually performs extraction.
This commit fixes extractor id in download archives for url_transparent downloads. Previously, 'transparent' extractor was erroneously
used for extractor archive id, e.g. 'eggheadlesson 4n8ugwwj5t' instead of 'wistia 4n8ugwwj5t'.
7 years ago
Sergey M․ 15da37c7dc
[YoutubeDL] Don't expand env variables in meta fields (closes #13637) 7 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
Sergey M․ 39d4c1be4d
[youtube] Improve chapters extraction (closes #13247) 8 years ago
Yen Chi Hsuan 5552c9eb0f
[utils] Recognize more patterns in strip_jsonp()
Used in Youku Show pages
8 years ago
Sergey M․ e4a75d7932
[test_youtube_chapters] PEP 8 8 years ago
Sergey M․ a57a8e9918
[test_youtube_chapters] Add coding cookie 8 years ago
Sergey M․ 9cafc3fd8b
[youtube] Extract chapters 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
Sergey M․ 30bb6ce1a4
[test_InfoExtractor] Fix test_parse_m3u8_formats 8 years ago
Tithen-Firion 374560f018 [test_download] Fix order when testing file's md5 8 years ago
Sergey M․ ff99fe529e
Don't list master m3u8 playlists in format list (closes #12832) 8 years ago
Sergey M․ 538eee7b6a
Add missing test m3u8 file 8 years ago
Sergey M․ ddd258f922
[test_InfoExtractor] Add m3u8 parsing test for NAME attribute in EXT-X-STREAM-INF tag 8 years ago
Sergey M․ cb2520802d
[extractor/common] Improve m3u8 extraction (closes #12211)
* Extract m3u8 parsing to separate method
* Improve rendition groups extraction
* Build stream name according stream GROUP-ID
* Ignore reference to AUDIO group without URI when stream has no CODECS
+ Add test coverage for parsing m3u8 from #11507, #11995, #12211 and twitch vod
8 years ago
Remita Amine 5b995f713b [utils] add support for ttml styles 8 years ago
Sergey M․ 51350db5a3
[test_YoutubeDL] Add test for #11163 8 years ago
Sergey M․ 364a69e8c6
[test_download] Fix testing playlists with single video and add comments 8 years ago
Sergey M․ 60e5016199
[test_download] Remove unused import 8 years ago
Sergey M․ c4d6fc6d65
[test_subtitles] Fix raiplay test 8 years ago
Sergey M․ 80b2fdf9ac
[test_download] Match info dicts against tests before matching info file 8 years ago
John Hawkinson 3bef10a50c [test_download] typo in comment 8 years ago
John Hawkinson a84da06f49 [test_download] Improve diagnostic on wrong 'id' 8 years ago
Sergey M․ 942b44a052
[test_compat] Do not use dash in env variables' names 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
John Hawkinson c6c22e984d [test_download] Print additional IEs in summary output 8 years ago
Sergey M․ 7f3590c43b
[test_InfoExtractor] Add some realworld tests for _extract_jwplayer_data 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
Yen Chi Hsuan c9619f0a17 [aes] Add aes_cbc_encrypt
Used in daisuki.net (#4738)
8 years ago
Sergey M․ d0d9ade486 [YoutubeDL] Add support for string formatting operations in output template 8 years ago
Yen Chi Hsuan 8936f68a0b
[travis] Run tests in parallel
[test_download] Print test names in case of network errors

[test_download] Add comments for nose parameters

[test_download] Modify outtmpl to prevent info JSON filename conflicts

Thanks @jaimeMF for the idea.

[travis] Only download tests should be run in parallel
8 years ago
Sergey M․ 398dea3210
[test_YoutubeDL] Fix invalid escape sequences 8 years ago
Sergey M․ db13c16ef8
[utils] Add support for quoted string literals in --match-filter (closes #8050, closes #12142, closes #12144) 8 years ago
Thomas Christlieb 2af12ad9d2 Introduce get_elements_by_class and get_elements_by_attribute utility functions 8 years ago
Sergey M․ 4195096ea8
[utils] Improve comments processing in js_to_json (closes #11947) 8 years ago
Michal Čihař b3ee552e4b
[utils] Handle single-line comments in js_to_json 8 years ago
Sergey M․ 15846398ca
[utils] Improve parse_duration 8 years ago
Sergey M․ cb655f34fb
[utils] Add more date formats 8 years ago
Remita Amine 7fe1592073 [common] fix dash codec information for mixed videos and fragment url construction(#11490) 8 years ago
Sergey M․ b0c65c677f
[utils] Improve urljoin 8 years ago
Sergey M․ e34c33614d
[utils] Add convenience urljoin 8 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
8 years ago
Kacper Michajłow 189935f159 [jsinterp] Fix function calls without arguments. 8 years ago
Sergey M․ 02dc0a36b7
[utils] Introduce base_url 8 years ago
Sergey M․ e5a088dc4b
[utils] Fix --match-filter for int-like strings (closes #11082) 8 years ago
Yen Chi Hsuan 6f20b65e72
[test/test_http] Update tests
After switching to HTML5 extraction helpers in generic.py, the result
info_dict is always a playlist.
8 years ago
Sergey M․ c6eed6b8c0
[utils] Lower priority for rare date formats and add tests 8 years ago
Sergey M․ 3e4185c396
[utils] Use native french month names 8 years ago
Sergey M․ f6717dec8a
[utils] Improve month_by_name and add tests 8 years ago
Sergey M․ 6562d34a8c
[utils] Improve mimetype2ext 8 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
8 years ago
Yen Chi Hsuan e4659b4547
[utils] Correct octal/hexadecimal number detection in js_to_json 8 years ago
Sergey M․ 13585d7682
[utils] Recognize lowercase units in parse_filesize 8 years ago
Yen Chi Hsuan 52aa7e7476
[test_verbose_output] Fix tests under Python 3 8 years ago
Remita Amine 5f2c2b7936 [test_utils] add test for option with not str value 8 years ago
Sergey M․ a8795327ca
[utils] Add support TV Parental Guidelines ratings in parse_age_limit 8 years ago
Yen Chi Hsuan 7dc2a74e0a
[utils] Fix unified_timestamp for formats parsed by parsedate_tz() 8 years ago
Sergey M․ b070564efb
[extractor/common] Support multiple properties in _og_search_property 8 years ago
Philipp Hagemeister ce28252c48 [options] Add test that checks that --password=secret is hidden in verbose output 8 years ago
Yen Chi Hsuan 14a28e705b
[test/test_all_urls] Remove *.cc.com tests 8 years ago
Sergey M․ 317f7ab634
[YoutubeDL] Fix format selection with filters (Closes #10083) 8 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 dfe5fa49ae
[compat] Fix compat_shlex_split for non-ASCII input
Closes #9871
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
Yen Chi Hsuan 40f3666f6b
[test/test_http] Update tests for 38cce791c7 9 years ago
Jaime Marquínez Ferrándiz a9eede3913
[test/compat] compat_shlex_split: test with newlines 9 years ago
Sergey M․ fd7a7498a4
[test_all_urls] PEP 8 and change wording 9 years ago
Matthieu Muffato e3a6747d8f
New test-case: extractor names are supposed to be unique
@dstftw explained in
https://github.com/rg3/youtube-dl/pull/9918#issuecomment-228625878 that
extractor names are supposed to be unique. @dstftw has fixed the two
offending extractors, and here I add a test to ensure this does not
happen in the future.
9 years ago
remitamine 4f3c5e0627 [utils] add helper function for parsing codecs 9 years ago
Sergey M․ 88d9f6c0c4
[utils] Add support for name list in _html_search_meta 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
Yen Chi Hsuan 54fb199681 [test/test_http] Fix getsockname() on Jython 9 years ago
Yen Chi Hsuan 8c32e5dc32 [test/test_utils] Add test for #9588 9 years ago
Yen Chi Hsuan eb7941e3e6
[compat] Fix for XML with <!DOCTYPE> in Python 2.7 and 3.2
Such XML documents cause DeprecationWarning if python is run
with `-W error`
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 98d560f205
[test/test_socks] Skip SOCKS tests
They occasional trigger errors or blocks
(https://travis-ci.org/rg3/youtube-dl/jobs/130184883)
9 years ago
Yen Chi Hsuan 778a1ccca7
[utils] Add Œ and œ found in French to ACCENT_CHARS
Fixes #9463
9 years ago
Yen Chi Hsuan c2876afafe
[test/test_socks] Use a different port range
Seems on Travis CI, ports in the original range are often used.
9 years ago
Yen Chi Hsuan e21f17fc86
[test/test_socks] Test with local SOCKS servers 9 years ago
Yen Chi Hsuan edaa23f822
[compat] Rename struct_(un)pack to compat_struct_(un)pack 9 years ago
Yen Chi Hsuan 72f3289ac4
[test/test_socks] Add tests for SOCKS proxies 9 years ago
Yen Chi Hsuan dab0daeeb0
[utils,compat] Move struct_pack and struct_unpack to compat.py 9 years ago
Sergey M․ fad7bbec3a
[test_compat] Remove unused import 9 years ago
Sergey M․ 20cfdcc910
[test_compat] Avoid None values for compat_setenv 9 years ago
Sergey M․ 1292638754
[test_compat] Use compat_setenv 9 years ago
Sergey M․ fe40f9eef2
[compat] Add compat_setenv 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 1b6182d8f7 [youtube:playlist] Fetch all the videos in a mix (fixes #3837)
Since there doesn't seem to be any indication, it stops when there aren't new videos in the webpage.
9 years ago
Jaime Marquínez Ferrándiz 6a801f4470 [test/InfoExtractors] add test for _download_json 9 years ago
Jaime Marquínez Ferrándiz eb9c3edd5e [test/utils] Add test for date_from_str 9 years ago
Yen Chi Hsuan 6c4c7539f2 [test/helper] Check got values to be strings for md5: fields
Seen in PBSIE tests
9 years ago
Yen Chi Hsuan 92d5477d84 [compat] Handle tuples properly in urlencode()
Fixes #9055
9 years ago
Sergey M․ e289d6d62c [test_compat] Add tests for compat_urllib_parse_urlencode 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
Yen Chi Hsuan efbed08dc2 [utils] Encode hostnames before passing to urllib
With IDN (Internationalized Domain Name) and a proxy, non-ascii URLs
are passed down to urllib/urllib2, causing UnicodeEncodeError

Fixes #8890
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․ 4c3b16d5d1 [test_YoutubeDL] Add test for format_id format selection 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
Sergey M․ e0dccdd398 [test_YoutubeDL] PEP 8 9 years ago
Sergey M․ 5d583bdf6c [YoutubeDL] Improve _format_note 9 years ago
remitamine 1255733945 Merge pull request #8739 from remitamine/update_url_params
[utils] add update_url_query function to create or update query string params
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
Yen Chi Hsuan 429491f531 [test/http] Fix failure in Jython
make offlinetest passed on the latest Jython hg version with patched
lib-python/2.7/urllib2.py pulled from CPython 2.7.11
9 years ago