Sergey M․
4195096ea8
[utils] Improve comments processing in js_to_json ( closes #11947 )
2017-02-03 03:04:33 +07:00
Michal Čihař
b3ee552e4b
[utils] Handle single-line comments in js_to_json
2017-02-03 03:04:33 +07:00
Sergey M․
15846398ca
[utils] Improve parse_duration
2017-01-26 23:23:08 +07:00
Sergey M․
cb655f34fb
[utils] Add more date formats
2017-01-12 22:39:45 +07:00
Remita Amine
7fe1592073
[common] fix dash codec information for mixed videos and fragment url construction( #11490 )
2016-12-20 12:35:03 +01:00
Sergey M․
b0c65c677f
[utils] Improve urljoin
2016-12-17 18:49:55 +07:00
Sergey M․
e34c33614d
[utils] Add convenience urljoin
2016-12-13 02:23:49 +07:00
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
2016-11-17 19:45:42 +08:00
Kacper Michajłow
189935f159
[jsinterp] Fix function calls without arguments.
2016-11-11 15:36:57 +01:00
Sergey M․
02dc0a36b7
[utils] Introduce base_url
2016-11-02 02:30:18 +07:00
Sergey M․
e5a088dc4b
[utils] Fix --match-filter for int-like strings ( closes #11082 )
2016-10-31 23:32:08 +07:00
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.
2016-10-12 01:41:41 +08:00
Sergey M․
c6eed6b8c0
[utils] Lower priority for rare date formats and add tests
2016-09-29 23:52:29 +07:00
Sergey M․
3e4185c396
[utils] Use native french month names
2016-09-14 23:59:38 +07:00
Sergey M․
f6717dec8a
[utils] Improve month_by_name and add tests
2016-09-14 23:59:38 +07:00
Sergey M․
6562d34a8c
[utils] Improve mimetype2ext
2016-09-02 22:57:48 +07:00
Yen Chi Hsuan
70852b47ca
[utils] Recognize units with full names in parse_filename
...
Reference: https://en.wikipedia.org/wiki/Template:Quantities_of_bytes
2016-08-20 00:17:26 +08:00
Yen Chi Hsuan
e4659b4547
[utils] Correct octal/hexadecimal number detection in js_to_json
2016-08-19 20:37:17 +08:00
Sergey M․
13585d7682
[utils] Recognize lowercase units in parse_filesize
2016-08-18 23:32:00 +07:00
Yen Chi Hsuan
52aa7e7476
[test_verbose_output] Fix tests under Python 3
2016-08-13 17:36:14 +08:00
Remita Amine
5f2c2b7936
[test_utils] add test for option with not str value
2016-08-13 09:54:12 +01:00
Sergey M․
a8795327ca
[utils] Add support TV Parental Guidelines ratings in parse_age_limit
2016-08-07 20:45:18 +07:00
Yen Chi Hsuan
7dc2a74e0a
[utils] Fix unified_timestamp for formats parsed by parsedate_tz()
2016-08-05 11:41:55 +08:00
Sergey M․
b070564efb
[extractor/common] Support multiple properties in _og_search_property
2016-08-02 22:55:14 +07:00
Philipp Hagemeister
ce28252c48
[options] Add test that checks that --password=secret is hidden in verbose output
2016-08-02 17:03:46 +02:00
Yen Chi Hsuan
14a28e705b
[test/test_all_urls] Remove *.cc.com tests
2016-07-26 11:08:09 +08:00
Sergey M․
317f7ab634
[YoutubeDL] Fix format selection with filters ( Closes #10083 )
2016-07-16 00:55:43 +07:00
Yen Chi Hsuan
0b68de3cc1
Merge pull request #8876 from remitamine/html5_media
...
[extractor/common] add helper method to extract html5 media entries
2016-07-10 23:40:45 +08:00
Yen Chi Hsuan
dfe5fa49ae
[compat] Fix compat_shlex_split for non-ASCII input
...
Closes #9871
2016-07-07 17:37:29 +08:00
Yen Chi Hsuan
84c237fb8a
[utils] Add get_element_by_class
...
For #9950
2016-07-06 20:02:52 +08:00
Remita Amine
dfaa86b75e
[test_utils] add test for smuggling a smuggled url
2016-07-04 21:36:32 +01:00
Yen Chi Hsuan
40f3666f6b
[test/test_http] Update tests for 38cce791c7
2016-07-03 23:50:55 +08:00
Jaime Marquínez Ferrándiz
a9eede3913
[test/compat] compat_shlex_split: test with newlines
2016-07-01 03:30:35 +07:00
Sergey M․
fd7a7498a4
[test_all_urls] PEP 8 and change wording
2016-06-27 22:11:45 +07:00
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.
2016-06-27 22:09:29 +07:00
remitamine
4f3c5e0627
[utils] add helper function for parsing codecs
2016-06-26 14:03:58 +01:00
Sergey M․
88d9f6c0c4
[utils] Add support for name list in _html_search_meta
2016-06-26 16:57:14 +07:00
Yen Chi Hsuan
1143535d76
[utils] Add urshift()
...
Used in IqiyiIE and LeIE
2016-06-26 15:16:49 +08:00
Sergey M․
46f59e89ea
[utils] Add unified_timestamp
2016-06-25 23:19:18 +07:00
Yen Chi Hsuan
47212f7bcb
[utils] Don't transform numbers not starting with a zero
...
Fix test_Viidea and maybe others
2016-06-16 11:00:54 +08:00
Yen Chi Hsuan
55b2f099c0
[utils] Decode HTML5 entities
...
Used in test_Vporn_1. Also related to #9270
2016-06-10 15:11:55 +08:00
bzc6p
b96f007eeb
Added sanitization support for Hungarian letters Ő and Ű
2016-06-02 11:39:32 +02:00
Yen Chi Hsuan
54fb199681
[test/test_http] Fix getsockname() on Jython
2016-06-02 15:00:49 +08:00
Yen Chi Hsuan
8c32e5dc32
[test/test_utils] Add test for #9588
2016-06-02 15:00:49 +08:00
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`
2016-05-23 01:40:11 +08:00
Sergey M․
46bc9b7d7c
[utils] Allow None in remove_{start,end}
2016-05-19 04:31:30 +06:00
Sergey M․
364cf465dd
[test_utils] PEP 8
2016-05-14 20:46:33 +06:00
Sergey M․
89ac4a19e6
[utils] Process non-base 10 integers in js_to_json
2016-05-14 20:39:58 +06:00
felix
bd1e484448
[utils] js_to_json: various improvements
...
now JS object literals like { /* " */ 0: ",]\xaa<\/p>", } will be correctly converted to JSON.
2016-05-14 20:12:39 +06:00
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 )
2016-05-14 18:48:36 +08:00
Yen Chi Hsuan
778a1ccca7
[utils] Add Œ and œ found in French to ACCENT_CHARS
...
Fixes #9463
2016-05-12 19:48:48 +08:00
Yen Chi Hsuan
c2876afafe
[test/test_socks] Use a different port range
...
Seems on Travis CI, ports in the original range are often used.
2016-05-10 14:51:38 +08:00
Yen Chi Hsuan
e21f17fc86
[test/test_socks] Test with local SOCKS servers
2016-05-10 14:51:38 +08:00
Yen Chi Hsuan
edaa23f822
[compat] Rename struct_(un)pack to compat_struct_(un)pack
2016-05-10 14:51:38 +08:00
Yen Chi Hsuan
72f3289ac4
[test/test_socks] Add tests for SOCKS proxies
2016-05-10 14:51:38 +08:00
Yen Chi Hsuan
dab0daeeb0
[utils,compat] Move struct_pack and struct_unpack to compat.py
2016-05-10 14:51:38 +08:00
Sergey M․
fad7bbec3a
[test_compat] Remove unused import
2016-05-09 22:15:55 +06:00
Sergey M․
20cfdcc910
[test_compat] Avoid None values for compat_setenv
2016-05-09 22:00:14 +06:00
Sergey M․
1292638754
[test_compat] Use compat_setenv
2016-05-09 21:58:38 +06:00
Sergey M․
fe40f9eef2
[compat] Add compat_setenv
2016-05-09 21:55:03 +06:00
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
2016-05-02 13:25:12 +10:00
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
2016-05-02 13:21:39 +10:00
Sergey M
b6c0d4f431
Merge pull request #9110 from remitamine/parse_duration
...
[utils] imporove parse_duration to handle more formats
2016-04-21 22:53:16 +07:00
remitamine
acaff49575
[utils] imporove parse_duration to handle more formats
2016-04-21 16:34:54 +01:00
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.
2016-04-17 17:07:57 +02:00
Jaime Marquínez Ferrándiz
6a801f4470
[test/InfoExtractors] add test for _download_json
2016-04-09 23:18:41 +02:00
Jaime Marquínez Ferrándiz
eb9c3edd5e
[test/utils] Add test for date_from_str
2016-04-09 22:40:05 +02:00
Yen Chi Hsuan
6c4c7539f2
[test/helper] Check got values to be strings for md5: fields
...
Seen in PBSIE tests
2016-04-09 22:04:48 +08:00
Yen Chi Hsuan
92d5477d84
[compat] Handle tuples properly in urlencode()
...
Fixes #9055
2016-04-06 18:29:54 +08:00
Sergey M․
e289d6d62c
[test_compat] Add tests for compat_urllib_parse_urlencode
2016-03-26 02:38:33 +06:00
Yen Chi Hsuan
81f36eba88
[test/test_utils] Update for escape_url change (again)
2016-03-23 23:23:26 +08:00
Yen Chi Hsuan
2d60465e44
[test/test_utils] Update for escape_url change
2016-03-23 23:20:28 +08:00
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
2016-03-23 22:24:52 +08:00
Jaime Marquínez Ferrándiz
782b1b5bd1
[utils] lookup_unit_table: Match word boundary instead of end of string
2016-03-19 11:44:49 +01:00
Sergey M․
4c3b16d5d1
[test_YoutubeDL] Add test for format_id format selection
2016-03-19 00:04:26 +06:00
Sergey M․
c5229f3926
[utils] PEP 8
2016-03-16 21:50:04 +06:00
remitamine
83548824c2
Merge pull request #8092 from bpfoley/twitter-thumbnail
...
[utils] Add extract_attributes for extracting html tag attributes
2016-03-16 13:16:27 +01:00
Sergey M․
fb47597b09
[bbc] Generalize unit table lookup and add parse_count
2016-03-13 16:27:20 +06:00
Sergey M․
e0dccdd398
[test_YoutubeDL] PEP 8
2016-03-10 09:04:48 +06:00
Sergey M․
5d583bdf6c
[YoutubeDL] Improve _format_note
2016-03-10 01:03:18 +06:00
remitamine
1255733945
Merge pull request #8739 from remitamine/update_url_params
...
[utils] add update_url_query function to create or update query string params
2016-03-03 19:24:04 +01:00
remitamine
3201a67f61
[test/test_utils] add more tests for update_url_query
2016-03-03 19:18:57 +01:00
remitamine
fb640d0a3d
[test/test_utils] add tests for update_url_query
2016-03-03 18:40:05 +01:00
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
2016-03-03 21:55:17 +08:00
Yen Chi Hsuan
e9c0cdd389
[jython] Introduce compat_os_name
...
os.name is always 'java' on Jython
2016-03-03 19:24:24 +08:00
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.
2016-03-03 10:11:37 +00:00
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
2016-02-27 03:22:52 +08:00
Sergey M․
f160785c5c
[utils] Remove AM/PM from unified_strdate patterns
2016-02-25 00:52:49 +06:00
Yen Chi Hsuan
a4e4d7dfcd
[test_iqiyi_sdk_interpreter] Add test for iQiyi login
2016-02-20 23:10:39 +08:00
Yen Chi Hsuan
5bc880b988
[utils] Add OHDave's RSA encryption function
2016-02-20 19:54:58 +08:00
Sergey M․
86bf29050e
[test_YoutubeDL] Make test pass until more intelligent sort formats ( Closes #8462 )
2016-02-20 03:36:03 +06:00
Sergey M․
8411229bd5
[utils] Allow dot in strip_jsonp
2016-02-07 19:47:09 +06:00
Sergey M․
86296ad2cd
[utils] Add ability to control skipping false values in dict_get
2016-02-07 08:13:04 +06:00
Sergey M․
cbecc9b903
[utils] Add dict_get convenience method
2016-02-07 06:12:53 +06:00
remitamine
91cb6b5065
rename _parse_mpd to _parse_mpd_formats and add default value for mpd namespace
2016-02-06 14:03:48 +01:00
remitamine
920d21b9d3
[test_subtitles] update youtube subtitles tests
2016-02-04 08:50:55 +01:00
Yen Chi Hsuan
1df4141196
[test_YoutubeDL] Fix test_youtube_format_selection
...
Broken since a6c2c24479
. Thanks to
@jaimeMF and @anisse for pointing that out
2016-02-03 03:42:37 +08:00
Yen Chi Hsuan
b286f201a8
[YoutubeDL] Do not override ie_key in url_transparent
2016-02-01 17:05:48 +08:00
Yen Chi Hsuan
189d72d5fd
[test_subtitles] Fix TestRaiSubtitles
...
RaiIE is renamed to RaiTVIE in 06d5556dfa
2016-01-31 20:12:43 +08:00
Yen Chi Hsuan
a7aab0c23e
[test_youtube_lists] Fix TestYoutubeLists.test_youtube_course
...
Youtube entries are now generators
2016-01-31 20:12:43 +08:00
Jaime Marquínez Ferrándiz
70029bc348
[youtube:user] Require 'https?://' in the url ( fixes #8356 )
...
It was matching www.youtube.com/embed/WpfukLMe1TM.
The generic extractor automatically adds http:// if it's missing.
2016-01-29 11:27:11 +01:00
dyn888
b913348d5f
Test codec with a dot '.' in name selection.
2016-01-28 15:07:33 +01:00
Filippo Valsorda
4d318be195
[update] fix (unexploitable) BB'06 vulnerability in rsa_verify
...
The rsa_verify code was vulnerable to a BB'06 attack, allowing to forge
signatures for arbitrary messages if and only if the public key exponent is
3. Since the updates key is hardcoded to 65537, there is no risk for
youtube-dl, but I don't want vulnerable code in the wild.
The new function adopts a way safer approach of encoding-and-comparing to
replace the dangerous parsing code.
2016-01-21 20:12:17 +00:00
Jaime Marquínez Ferrándiz
e37afbe0b8
[YoutubeDL] urlopen: disable the 'file:' protocol ( #8227 )
...
If someone is running youtube-dl on a server to deliver files, the user could input 'file:///some/important/file' and youtube-dl would save that file as a video giving access to sensitive information to the user.
'file:' urls can be filtered, but the user can use an URL to a crafted m3u8 manifest like:
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:10.0
file:///etc/passwd
#EXT-X-ENDLIST
With this patch 'file:' URLs raise URLError like for unknown protocols.
2016-01-14 00:24:04 +01:00
Jakub Wilk
dfb1b1468c
Fix typos
...
Closes #8200 .
2016-01-10 17:24:28 +01:00
remitamine
f11d00fa41
[test_subtitles] remove BlipTV test
2015-12-21 16:52:47 +01:00
Sergey M․
6b77d52b1f
[test_utils] Add tests for encode_compat_str
2015-12-20 07:07:14 +06:00
Yen Chi Hsuan
db2fe38b55
[utils] Support alternative timestamp format in TTML
...
Fixes #7608
2015-12-19 19:29:51 +08:00
Yen Chi Hsuan
d631d5f9f2
[utils] Fix TTML conversion
...
Tolerate invalid timestamps (closes #7909 )
2015-12-19 18:21:42 +08:00
Sergey M․
31b2051e21
[utils] Add remove_quotes
2015-12-14 21:30:58 +06:00
Jaime Marquínez Ferrándiz
47f48f5d85
[test/test_all_urls] Update pbs extractor name
...
It's in lowercase now (since e15e2ef7a0
).
2015-12-08 21:12:13 +01:00
Sergey M․
9cb9a5df77
[utils] Check ext with trailing slash against the list of known extensions
2015-11-22 17:27:13 +06:00
Sergey M․
5035536e3f
[test_utils] Add tests for determine_ext
2015-11-22 06:33:52 +06:00
Sergey M․
7aefc49c40
[utils] Skip invalid/non HTML entities ( Closes #7518 )
2015-11-16 20:20:16 +06:00
Yen Chi Hsuan
ff29bf81f8
[jsinterp] Support alternative function definition form
2015-11-10 12:54:02 +08:00
Yen Chi Hsuan
66d041f250
[test/subtitles] Add test for DemocracynowIE
2015-11-04 00:53:30 +08:00
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'.
2015-11-02 14:08:38 +01:00
Sergey M
30eecc6a04
Merge pull request #7296 from jaimeMF/xml_attrib_unicode
...
Use a wrapper around xml.etree.ElementTree.fromstring in python 2.x (…
2015-10-31 18:15:21 +00:00
Sergey M․
578c074575
[utils] Support list of xpath in xpath_element
2015-10-31 22:39:44 +06:00
Sergey M․
52c3a6e49d
[utils] Improve parse_iso8601
2015-10-28 21:40:22 +06:00
Jaime Marquínez Ferrándiz
f78546272c
[compat] compat_etree_fromstring: also decode the text attribute
...
Deletes parse_xml from utils, because it also does it.
2015-10-26 16:41:24 +01:00
Jaime Marquínez Ferrándiz
387db16a78
[compat] compat_etree_fromstring: only decode bytes objects
2015-10-25 20:30:54 +01:00
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).
2015-10-25 20:13:16 +01:00
Jaime Marquínez Ferrándiz
65d49afa48
[test/test_download] Use extract_flat = 'in_playlist' for playlist items
...
Some playlist extractors return a 'url' result, which wouldn't be resolved.
2015-10-23 14:12:46 +02:00
Sergey M․
d01949dc89
[utils:js_to_json] Fix bad escape in double quoted strings
2015-10-20 23:09:51 +06:00
Sergey M․
448ef1f31c
[extractor/common] Allow angle brackets in attributes in _og_regexes ( #7215 )
2015-10-18 09:11:02 +06:00
Sergey M․
8e5b121948
[test_youtube_lists] Add test flat playlist entries' titles
2015-10-18 00:27:06 +06:00
Sergey M․
db0a8ad979
[test_InfoExtractor] Add test for unquoted attribute
2015-10-14 21:11:06 +06:00
Sergey M․
1c29e81e62
[test_InfoExtractor] Add test for 7a6d76a64d
2015-10-14 20:58:52 +06:00
Jaime Marquínez Ferrándiz
7d0ada5ff9
[test/helper] Fix style
...
Use the correct indentation to please flake8
2015-10-02 13:42:11 +02:00
Sergey M․
f88f1b40ce
[test/helper] Clarify field for list length mismatch
2015-09-30 20:33:59 +06:00
Sergey M․
386a7b52d5
[test/helper] Spelling
2015-09-30 20:33:51 +06:00
Sergey M․
2e885de796
[test/helper] Formatting
2015-09-30 20:33:45 +06:00
Qijiang Fan
687c04cbb8
[test] use descriptive variable name
2015-09-30 20:33:35 +06:00
Qijiang Fan
40c931de4b
[test] split expect_dict to two functions
2015-09-30 20:33:30 +06:00
Qijiang Fan
93bc7ef165
[test] recursively check dict and list in expect_info_dict
...
This allows to use md5:, re:, etc within the str inside a list
or dict.
2015-09-30 20:33:20 +06:00
Sergey M․
c6aa838b51
[youtube:history] Enable exractor
2015-09-21 21:28:02 +06:00
Jaime Marquínez Ferrándiz
f005f96ea5
[youtube:history] Explain why it has disabled and skip test
2015-09-20 12:23:13 +02:00
remitamine
c67a055d16
[test/test_write_annotations] fix test filename
...
Closes #6781
2015-09-07 11:18:55 +02:00
Sergey M․
3513d41436
[test_compat] Fix typo
2015-09-05 21:45:52 +06:00
Sergey M․
ee087c79ad
[test_compat] Add test for compat_shlex_split
2015-09-05 21:41:34 +06:00
Sergey M․
f71264490c
[test_utils] Add tests for cli option converters
2015-09-05 03:07:19 +06:00
Sergey M․
87f70ab39d
[test_utils] Add more tests for xpath
2015-09-05 00:36:16 +06:00
Yen Chi Hsuan
f908b74fa3
[test/subtitles] Add test for ThePlatformFeedIE
2015-08-21 01:38:57 +08:00
Sergey M․
8e2b1be127
[test/helper] Make age_limit checkable field
2015-08-08 21:42:50 +06:00
Sergey M.
d5d7bdaeb5
Merge pull request #6428 from dstftw/improve-generic-smil-support
...
Improve generic SMIL support
2015-08-08 05:47:33 +06:00
Jaime Marquínez Ferrándiz
232541df44
[YoutubeDL] format spec: correctly handle dashes and other unused operators
...
'mp4-baseline-16x9' must be handled as a single string, but the '-' was treated as an operator.
2015-08-04 22:29:23 +02:00
Jaime Marquínez Ferrándiz
d96d604e53
YoutubeDL: format spec: don't accept a bare '/' ( #6124 )
2015-08-03 23:04:11 +02:00
Jaime Marquínez Ferrándiz
03950c90f7
Merge remote-tracking branch 'jaimemf/format_spec_groups' ( closes #6124 )
2015-08-03 15:22:51 +02:00
Sergey M․
645f814544
[test/helper] Allow dicts for mincount
2015-08-02 01:15:33 +06:00
Sergey M․
308cfe0ab3
[test_downloader] Respect --force-generic-extractor
2015-08-02 01:14:41 +06:00
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]`
2015-08-01 20:22:13 +06:00
Yen Chi Hsuan
9c29bc69f7
[utils] Improve parse_duration
...
Now dots are parsed. For example '87 Min.'
2015-07-22 23:15:22 +08:00
Sergey M․
8954e48140
[test_compat] Add tests for compat_urllib_parse_unquote_plus
2015-07-17 23:31:23 +06:00
Sergey M․
d79febcd06
[test_compat] Remove redundant test
2015-07-17 23:09:56 +06:00
Sergey M․
14309e1ddc
[test_compat] Make tests more idiomatic
2015-07-17 22:58:39 +06:00
fnord
4a63291144
Add tests for compat_urllib_parse_unquote
2015-07-17 09:46:08 -05:00
Jaime Marquínez Ferrándiz
0a31a35098
[YoutubeDL] format spec: add additional checks for invalid syntax
2015-07-10 22:46:25 +02:00
Jaime Marquínez Ferrándiz
bb8e553662
[YoutubeDL] format spec: Do not fail when a filter gives an empty result
...
For example with 'best[height<40]' we ended getting a 'IndexError: list index out of range'.
2015-07-04 21:41:09 +02:00
Jaime Marquínez Ferrándiz
f5f4a27a96
[YoutubeDL] format spec: fix handling of '/' with ','
...
When using 'bestvideo/best,bestaudio', 'bestvideo/best' must be set as the current_selector (instead of appending it to the selectors), otherwise when it gets the ',' it would append 'None' to the selectors.
2015-07-04 21:30:26 +02:00
Jaime Marquínez Ferrándiz
cf2ac6df68
[YoutubeDL] format spec: Fix handling of '+' with '/'
...
'bestvideo+bestaudio/best' was incorrectly interpreted as 'bestvideo+(bestaudio/best)', so it would fail if 'bestaudio' doesn't exist instead of falling back to 'best'.
2015-06-30 19:50:17 +02:00
Jaime Marquínez Ferrándiz
0130afb76e
[YoutubeDL] format spec: allow grouping specifiers with parentheses
2015-06-29 12:46:02 +02:00
Jaime Marquínez Ferrándiz
5acfa126c8
[YoutubeDL] format spec: treat 'all' like a normal specifier
...
So you can use filters with it, for example 'all[width>=400][width<=600]'.
2015-06-28 22:48:02 +02:00
Jaime Marquínez Ferrándiz
67134eaba1
[YoutubeDL] rework how the format spec is processed
...
The spec string is processed using 'tokenize.tokenize' to split it in words and operators, the filters are still processed using regular expressions.
This should make easier to allow grouping operators with parens.
2015-06-28 22:31:35 +02:00
Jaime Marquínez Ferrándiz
4c8fea92f3
[test/aes] Fix on python 3.3 and higher
...
Since 878563c847
the aes functions only accepts the base64 data as a unicode string.
2015-06-03 23:50:38 +02:00
Yen Chi Hsuan
f0bfaa2d7d
[nrk] Update subtitles test
...
Subtitle conversion routine is removed, so the subtitles are TTML now. See
1c7e2e64f6
2015-05-27 15:23:34 +08:00
Yen Chi Hsuan
1b0427e6c4
[utils] Support TTML without default namespace
...
In a strict sense such TTML is invalid, but Yahoo uses it.
2015-05-19 00:45:01 +08:00
Jaime Marquínez Ferrándiz
e9eaf3fbcf
[test/YoutubeDL] Add tests for 'playliststart', 'playlistend' and 'playlist_items'
2015-05-15 14:08:26 +02:00
Yen Chi Hsuan
7dff03636a
[utils] Support 'dur' field in TTML
2015-05-12 12:47:37 +08:00
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.
2015-05-09 17:37:39 +08:00
Yen Chi Hsuan
0fe2ff78e6
[NBC] Enhance embedURL extraction ( closes #2549 )
2015-05-04 21:55:04 +08:00
Sergey M․
b3ed15b760
[utils] Add replace_extension
2015-05-02 23:23:06 +06:00
Sergey M․
a4bcaad773
[test_utils] Add tests for prepend_extension
2015-05-02 23:10:48 +06:00
Jaime Marquínez Ferrándiz
8dd5418803
Make 'best' format only match non-DASH formats ( closes #5554 )
...
Otherwise it's impossible to only download non-DASH formats, for example `best[height=?480]/best` would download a DASH video if it's the only one with height=480, instead for falling back to the second format specifier.
For audio only urls (soundcloud, bandcamp ...), the best audio will be downloaded as before.
2015-04-29 22:53:18 +02:00
Sergey M.
40b96352c9
Merge pull request #5523 from jaimeMF/remove-format-limit
...
Remove the --max-quality option
2015-04-27 16:44:58 +05:00
Yen Chi Hsuan
bf6427d2fb
[ffmpeg] Add dfxp (TTML) subtitles support ( #3432 , #5146 )
2015-04-25 23:18:27 +08:00
Jaime Marquínez Ferrándiz
9f3fa89f7c
Remove the --max-quality option
...
It doesn't work well with 'bestvideo' and 'bestaudio' because they are usually before the max quality.
Format filters should be used instead, they are more flexible and don't require the requested quality to exist for each video.
2015-04-25 11:59:54 +02:00
Sergey M․
70947ea7b1
[parameters.json] Set default format
parameter to best
2015-04-19 17:56:06 +02:00
Yen Chi Hsuan
880ee801cf
[tests] Allow multi_video to be tested as playlists
2015-04-19 19:08:37 +08:00
Jaime Marquínez Ferrándiz
592e97e855
Postprocessors: use a list for the files that can be deleted
...
We could only know if we had to delete the original file, but this system allows to specify us more files (like subtitles).
2015-04-18 11:36:42 +02:00
Yen Chi Hsuan
0a1603634b
[utils] Remove url_infer_protocol
2015-04-08 21:39:34 +08:00
Yen Chi Hsuan
418c5cc3fc
[udn] Add new extractor
2015-04-08 17:26:51 +08:00
Sergey M․
ff02a228e3
[test_execution] Fix test under python 2 @ windows
2015-04-04 19:21:50 +06:00
Sergey M․
8cf70de428
[test_utils] Add test for unified_strdate
2015-04-04 19:11:01 +06:00
Sergey M․
ba9e68f402
[utils] Drop trailing comma before closing brace
2015-04-04 17:48:55 +06:00
Jaime Marquínez Ferrándiz
157e9e5aa5
[youtube:watchlater] Remove unused properties and fix tests
2015-03-26 20:03:31 +01:00
Naglis Jonaitis
91757b0f37
[utils] Escape all HTML entities written in hexadecimal form
2015-03-26 17:15:27 +02:00
Philipp Hagemeister
f5e2efbbf0
[options] Handle special characters in argv ( Fixes #5157 )
2015-03-24 16:39:46 +01:00
Jaime Marquínez Ferrándiz
f9544f6e8f
[test/aes] Test aes_decrypt_text with 256 bit
2015-03-22 12:09:58 +01:00
Jaime Marquínez Ferrándiz
5379a2d40d
[test/utils] Test xpath_text
2015-03-21 14:12:43 +01:00
Jaime Marquínez Ferrándiz
a7d9ded45d
[test] Add tests for aes
2015-03-21 12:07:23 +01:00
Jaime Marquínez Ferrándiz
531980d89c
[test/YoutubeDL] test match_filter
2015-03-20 17:05:28 +01:00
Jaime Marquínez Ferrándiz
f20bf146e2
[test/YoutubeDL] split in two classes
...
The name was misleading
2015-03-20 15:14:25 +01:00
Jaime Marquínez Ferrándiz
01218f919b
[test/http] Add test for proxy support
2015-03-20 14:59:38 +01:00
Sergey M․
92a4793b3c
[utils] Place sanitize url function near other sanitizing functions
2015-03-17 21:34:22 +06:00
Sergey M․
dc03a42537
Merge branch 'sohu_fix' of https://github.com/yan12125/youtube-dl into yan12125-sohu_fix
2015-03-17 21:18:36 +06:00
Jaime Marquínez Ferrándiz
8508557e77
[test/YoutubeDL] Use valid urls
...
It failed on python 3.4 when building the http_headers field
2015-03-14 20:51:42 +01:00
Jaime Marquínez Ferrándiz
4d1652484f
[test/unicode_literals] Don't look into the .git and .tox directories
...
The .tox directory contains python code that we can't control
2015-03-14 20:25:37 +01:00
Jaime Marquínez Ferrándiz
88cf6fb368
[metadatafromtitle] Some improvements and cleanup
...
* Remove the 'songtitle' field, 'title' can be used instead.
* Remove newlines in the help text, for consistency with other options.
* Add 'from __future__ import unicode_literals'.
* Call '__init__' from the parent class.
* Add test for the format_to_regex method
2015-03-14 20:06:33 +01:00
Jaime Marquínez Ferrándiz
3946864c8a
[vimeo] Use https for all vimeo.com urls
...
Unfortunately vimeopro.com doesn't support it yet.
2015-03-12 19:08:16 +01:00
Sergey M․
7e195d0e92
[funnyordie] Add subtitles test
2015-03-11 22:00:37 +06:00
Sergey M․
2ebfeacabc
[utils] Keep dot and dotdot unmodified ( Closes #5171 )
2015-03-10 00:50:11 +06:00
Sergey M․
f18ef2d144
[utils] Disallow trailing dot in sanitize_path for a path part
2015-03-08 22:08:48 +06:00
Sergey M․
a2aaf4dbc6
[utils] Add sanitize_path
2015-03-08 20:55:22 +06:00
Yen Chi Hsuan
55969016e9
[utils] Add a function to sanitize consecutive slashes in URLs
2015-03-06 12:43:49 +08:00
Philipp Hagemeister
499bfcbfd0
Make sure netrc works for all extractors with login support
...
Fixes #5112
2015-03-03 12:59:17 +01:00
Philipp Hagemeister
a7440261c5
[utils] Streap leading dots
...
Fixes #2865 , closes #5087
2015-03-02 19:07:19 +01:00
Philipp Hagemeister
3e675fabe0
[airmozilla] Be more tolerant when nonessential items are missing ( #5030 )
2015-02-26 01:25:00 +01:00
Philipp Hagemeister
5a42414b9c
[utils] Prevent hyphen at beginning of filename ( Fixes #5035 )
2015-02-24 11:38:01 +01:00
Jaime Marquínez Ferrándiz
25ac63ed71
[rtve] Extract subtitles
2015-02-23 23:04:07 +01:00
Jaime Marquínez Ferrándiz
bfc993cc91
Merge branch 'subtitles-rework'
...
(Closes PR #4964 )
2015-02-23 17:13:03 +01:00
Jaime Marquínez Ferrándiz
80970e531b
[test/subtitles] Update checksum for Viki
2015-02-22 11:52:22 +01:00
Jaime Marquínez Ferrándiz
b7bb76df05
[test/subtitles] Remove some tests
...
Test only with 'allsubtitles', the language selection is already tested in test_YoutubeDL.py
2015-02-22 11:51:57 +01:00
Jaime Marquínez Ferrándiz
98c70d6fc7
[YoutubeDL] only add normal subtitles to the 'requested_subtitles' field if 'writesubtitles' is True
2015-02-22 11:37:27 +01:00
Jaime Marquínez Ferrándiz
ab84349b16
[test/YoutubeDL] Add test for subtitles
...
Updated the offlinetest make target to not skip it
2015-02-22 11:29:56 +01:00
Jaime Marquínez Ferrándiz
4d17184817
[YoutubeDL] don't set the 'requested_subtitles' without writesubtitles or writeautomaticsub
2015-02-22 00:27:49 +01:00
Philipp Hagemeister
8fb3ac3649
PEP8: W503
2015-02-21 14:55:13 +01:00
Jaime Marquínez Ferrándiz
8807f1277f
[theplatform] Convert to new subtitles system
2015-02-19 14:54:50 +01:00
Philipp Hagemeister
d305dd73a3
[utils] Fix js_to_json
...
Previously, the runtime could be atrocious for longer inputs.
2015-02-18 23:59:51 +01:00
Jaime Marquínez Ferrándiz
4f7cea6c53
[viki] Convert to new subtitles system
2015-02-18 20:37:16 +01:00
Jaime Marquínez Ferrándiz
afbdd3acc3
[rai] Convert to new subtitles system
2015-02-18 20:14:42 +01:00
Philipp Hagemeister
9789d7535d
[xtube] Fix test case
2015-02-18 19:58:41 +01:00
Jaime Marquínez Ferrándiz
01561da142
[nrk] Convert to new subtitles system
2015-02-18 18:57:01 +01:00
Jaime Marquínez Ferrándiz
0af25f784b
[mtv] Convert to new subtitles system
2015-02-18 18:27:45 +01:00
Jaime Marquínez Ferrándiz
b9b42f2ea0
[npo] Convert to new subtitles system
2015-02-18 17:57:10 +01:00
Jaime Marquínez Ferrándiz
311c393838
[lynda] Convert to new subtitles system
2015-02-18 17:46:33 +01:00
Philipp Hagemeister
3eff81fbf7
[jsinterp] Disable comment support
...
We need a proper lexer to be able to understand YouTube's code, which contains /* inside of strings.
For now it's sufficient to just disable comment support altogether.
Fixes #4976 , fixes #4979 , fixes #4980 , fixes #4981 , fixes #4982 .
Closes #4977 .
2015-02-18 10:47:42 +01:00
Philipp Hagemeister
f21e915fb9
[test/helper] Render info_dict with a final comma
2015-02-18 00:38:42 +01:00
Philipp Hagemeister
6f53c63df6
[test/helper] Only output a newline for forgotten keys if keys are really missing
2015-02-18 00:37:54 +01:00
Jaime Marquínez Ferrándiz
85920dd01d
[bliptv] Convert to new subtitles system
2015-02-17 21:56:25 +01:00
Jaime Marquínez Ferrándiz
360e1ca5cc
[youtube] Convert to new subtitles system
...
The automatic captions are stored in the 'automactic_captions' field, which is used if no normal subtitles are found for an specific language.
2015-02-16 22:47:39 +01:00
Jaime Marquínez Ferrándiz
a1f2a06b34
[dailymotion] Convert to new subtitles system
2015-02-16 21:51:08 +01:00
Jaime Marquínez Ferrándiz
c84dd8a90d
[YoutubeDL] store the subtitles to download in the 'requested_subtitles' field
...
We need to keep the orginal subtitles information, so that the '--load-info' option can be used to list or select the subtitles again.
We'll also be able to have a separate field for storing the automatic captions info.
2015-02-16 21:51:08 +01:00
Jaime Marquínez Ferrándiz
65469a7f8b
[vimeo] Convert to new subtitles system
...
Removed some tests, the behaviour should be checked in a test for the YoutubeDL class
2015-02-16 21:51:07 +01:00
Jaime Marquínez Ferrándiz
a504ced097
Improve subtitles support
...
For each language the extractor builds a list with the available formats sorted (like for video formats), then YoutubeDL selects one of them using the '--sub-format' option which now allows giving the format preferences (for example 'ass/srt/best').
For each format the 'url' field can be set so that we only download the contents if needed, or if the contents needs to be processed (like in crunchyroll) the 'data' field can be used.
The reasons for this change are:
* We weren't checking that the format given with '--sub-format' was available, checking it in each extractor would be repetitive.
* It allows to easily support giving a format preference.
* The subtitles were automatically downloaded in the extractor, but I think that if you use for example the '--dump-json' option you want to finish as fast as possible.
Currently only the ted extractor has been updated, but the old system still works.
2015-02-16 21:51:03 +01:00
Jaime Marquínez Ferrándiz
8fb474fb17
[test/subtitles] Fix some tests
...
The checksym for the CeskaTelevize subtitles has changed again, so we just test that it has a reasonable length.
2015-02-15 15:01:07 +01:00
Jaime Marquínez Ferrándiz
36e7a4ca2e
[test/subtitles] Update checksums
2015-02-13 14:43:50 +01:00
Jaime Marquínez Ferrándiz
d304209a85
[test/parameters.json] Set 'fixup' to 'never'
...
The fixed audio files for Youtube have a size lower that the minimum required.
2015-02-11 17:25:04 +01:00
Philipp Hagemeister
6a78740211
[test/test_youtube_signature] Use fake YDL
2015-02-10 05:28:59 +01:00
Philipp Hagemeister
347de4931c
[YoutubeDL] Add generic video filtering ( Fixes #4916 )
...
This functionality is intended to eventually encompass the current format filtering.
2015-02-10 03:32:24 +01:00
Jaime Marquínez Ferrándiz
0161353d7d
[test/test_YoutubeDL] Remove debug print call
2015-02-06 23:58:01 +01:00
Jaime Marquínez Ferrándiz
2b4ecde2c8
[test/YoutubeDL] Add a simple test for postprocesors
...
Just checks that the 'keepvideo' option works as intended.
2015-02-06 23:54:25 +01:00
Philipp Hagemeister
9bb8e0a3f9
[wsj] Add new extractor ( Fixes #4854 )
2015-02-03 10:58:28 +01:00
Philipp Hagemeister
23d9ded655
[franceculture] Rewrite for new HTML scheme ( Fixes #4853 )
2015-02-03 10:17:13 +01:00
Philipp Hagemeister
8f4b58d70e
[ntvde] Add new extractor ( Fixes #4850 )
2015-02-02 21:48:54 +01:00
Philipp Hagemeister
9e3f19919a
[jsinterp] Beef up and add tests
...
In preparation for #4822 , extend jsinterp by a lot. (We may even have to/want to write a proper interpreter with actual parsing)
2015-02-01 22:38:29 +01:00
Philipp Hagemeister
4e980275b5
[test_download] Remove references to "file" in test definitions
2015-02-01 15:21:18 +01:00
Philipp Hagemeister
dc35bfd2d5
[test/helper] Clarify which keys have to be added
2015-01-30 15:52:56 +01:00
Philipp Hagemeister
03d8d4df38
[test_http] PEP8
2015-01-30 03:06:40 +01:00
Philipp Hagemeister
83fda3c000
Add a test for --no-check-certificate
2015-01-30 02:57:37 +01:00