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
Yen Chi Hsuan
e9c0cdd389
[jython] Introduce compat_os_name
...
os.name is always 'java' on Jython
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
a4e4d7dfcd
[test_iqiyi_sdk_interpreter] Add test for iQiyi login
9 years ago
Yen Chi Hsuan
5bc880b988
[utils] Add OHDave's RSA encryption function
9 years ago
Sergey M․
86bf29050e
[test_YoutubeDL] Make test pass until more intelligent sort formats ( Closes #8462 )
9 years ago
Sergey M․
8411229bd5
[utils] Allow dot in strip_jsonp
9 years ago
Sergey M․
86296ad2cd
[utils] Add ability to control skipping false values in dict_get
9 years ago
Sergey M․
cbecc9b903
[utils] Add dict_get convenience method
9 years ago
remitamine
91cb6b5065
rename _parse_mpd to _parse_mpd_formats and add default value for mpd namespace
9 years ago
remitamine
920d21b9d3
[test_subtitles] update youtube subtitles tests
9 years ago
Yen Chi Hsuan
1df4141196
[test_YoutubeDL] Fix test_youtube_format_selection
...
Broken since a6c2c24479
. Thanks to
@jaimeMF and @anisse for pointing that out
9 years ago
Yen Chi Hsuan
b286f201a8
[YoutubeDL] Do not override ie_key in url_transparent
9 years ago
Yen Chi Hsuan
189d72d5fd
[test_subtitles] Fix TestRaiSubtitles
...
RaiIE is renamed to RaiTVIE in 06d5556dfa
9 years ago
Yen Chi Hsuan
a7aab0c23e
[test_youtube_lists] Fix TestYoutubeLists.test_youtube_course
...
Youtube entries are now generators
9 years ago
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.
9 years ago
dyn888
b913348d5f
Test codec with a dot '.' in name selection.
9 years ago
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.
9 years ago
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.
9 years ago
Jakub Wilk
dfb1b1468c
Fix typos
...
Closes #8200 .
9 years ago
remitamine
f11d00fa41
[test_subtitles] remove BlipTV test
9 years ago
Sergey M․
6b77d52b1f
[test_utils] Add tests for encode_compat_str
9 years ago
Yen Chi Hsuan
db2fe38b55
[utils] Support alternative timestamp format in TTML
...
Fixes #7608
9 years ago
Yen Chi Hsuan
d631d5f9f2
[utils] Fix TTML conversion
...
Tolerate invalid timestamps (closes #7909 )
9 years ago
Sergey M․
31b2051e21
[utils] Add remove_quotes
9 years ago
Jaime Marquínez Ferrándiz
47f48f5d85
[test/test_all_urls] Update pbs extractor name
...
It's in lowercase now (since e15e2ef7a0
).
9 years ago
Sergey M․
9cb9a5df77
[utils] Check ext with trailing slash against the list of known extensions
9 years ago
Sergey M․
5035536e3f
[test_utils] Add tests for determine_ext
9 years ago
Sergey M․
7aefc49c40
[utils] Skip invalid/non HTML entities ( Closes #7518 )
9 years ago
Yen Chi Hsuan
ff29bf81f8
[jsinterp] Support alternative function definition form
9 years ago
Yen Chi Hsuan
66d041f250
[test/subtitles] Add test for DemocracynowIE
9 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'.
9 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 (…
9 years ago
Sergey M․
578c074575
[utils] Support list of xpath in xpath_element
9 years ago
Sergey M․
52c3a6e49d
[utils] Improve parse_iso8601
9 years ago
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.
9 years ago
Jaime Marquínez Ferrándiz
387db16a78
[compat] compat_etree_fromstring: only decode bytes objects
9 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).
9 years ago
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.
9 years ago
Sergey M․
d01949dc89
[utils:js_to_json] Fix bad escape in double quoted strings
9 years ago
Sergey M․
448ef1f31c
[extractor/common] Allow angle brackets in attributes in _og_regexes ( #7215 )
9 years ago
Sergey M․
8e5b121948
[test_youtube_lists] Add test flat playlist entries' titles
9 years ago
Sergey M․
db0a8ad979
[test_InfoExtractor] Add test for unquoted attribute
9 years ago
Sergey M․
1c29e81e62
[test_InfoExtractor] Add test for 7a6d76a64d
9 years ago
Jaime Marquínez Ferrándiz
7d0ada5ff9
[test/helper] Fix style
...
Use the correct indentation to please flake8
9 years ago
Sergey M․
f88f1b40ce
[test/helper] Clarify field for list length mismatch
9 years ago
Sergey M․
386a7b52d5
[test/helper] Spelling
9 years ago
Sergey M․
2e885de796
[test/helper] Formatting
9 years ago
Qijiang Fan
687c04cbb8
[test] use descriptive variable name
9 years ago
Qijiang Fan
40c931de4b
[test] split expect_dict to two functions
9 years ago
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.
9 years ago
Sergey M․
c6aa838b51
[youtube:history] Enable exractor
9 years ago
Jaime Marquínez Ferrándiz
f005f96ea5
[youtube:history] Explain why it has disabled and skip test
9 years ago
remitamine
c67a055d16
[test/test_write_annotations] fix test filename
...
Closes #6781
9 years ago
Sergey M․
3513d41436
[test_compat] Fix typo
9 years ago
Sergey M․
ee087c79ad
[test_compat] Add test for compat_shlex_split
9 years ago
Sergey M․
f71264490c
[test_utils] Add tests for cli option converters
9 years ago
Sergey M․
87f70ab39d
[test_utils] Add more tests for xpath
9 years ago
Yen Chi Hsuan
f908b74fa3
[test/subtitles] Add test for ThePlatformFeedIE
9 years ago
Sergey M․
8e2b1be127
[test/helper] Make age_limit checkable field
10 years ago
Sergey M.
d5d7bdaeb5
Merge pull request #6428 from dstftw/improve-generic-smil-support
...
Improve generic SMIL support
10 years ago
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.
10 years ago
Jaime Marquínez Ferrándiz
d96d604e53
YoutubeDL: format spec: don't accept a bare '/' ( #6124 )
10 years ago
Jaime Marquínez Ferrándiz
03950c90f7
Merge remote-tracking branch 'jaimemf/format_spec_groups' ( closes #6124 )
10 years ago
Sergey M․
645f814544
[test/helper] Allow dicts for mincount
10 years ago
Sergey M․
308cfe0ab3
[test_downloader] Respect --force-generic-extractor
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
Sergey M․
8954e48140
[test_compat] Add tests for compat_urllib_parse_unquote_plus
10 years ago
Sergey M․
d79febcd06
[test_compat] Remove redundant test
10 years ago
Sergey M․
14309e1ddc
[test_compat] Make tests more idiomatic
10 years ago
fnord
4a63291144
Add tests for compat_urllib_parse_unquote
10 years ago
Jaime Marquínez Ferrándiz
0a31a35098
[YoutubeDL] format spec: add additional checks for invalid syntax
10 years ago
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'.
10 years ago
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.
10 years ago
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'.
10 years ago
Jaime Marquínez Ferrándiz
0130afb76e
[YoutubeDL] format spec: allow grouping specifiers with parentheses
10 years ago
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]'.
10 years ago
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.
10 years ago
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.
10 years ago
Yen Chi Hsuan
f0bfaa2d7d
[nrk] Update subtitles test
...
Subtitle conversion routine is removed, so the subtitles are TTML now. See
1c7e2e64f6
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
Jaime Marquínez Ferrándiz
e9eaf3fbcf
[test/YoutubeDL] Add tests for 'playliststart', 'playlistend' and 'playlist_items'
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
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.
10 years ago
Sergey M.
40b96352c9
Merge pull request #5523 from jaimeMF/remove-format-limit
...
Remove the --max-quality option
10 years ago
Yen Chi Hsuan
bf6427d2fb
[ffmpeg] Add dfxp (TTML) subtitles support ( #3432 , #5146 )
10 years ago
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.
10 years ago
Sergey M․
70947ea7b1
[parameters.json] Set default `format` parameter to `best`
10 years ago
Yen Chi Hsuan
880ee801cf
[tests] Allow multi_video to be tested as playlists
10 years ago
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).
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․
ff02a228e3
[test_execution] Fix test under python 2 @ windows
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
Jaime Marquínez Ferrándiz
157e9e5aa5
[youtube:watchlater] Remove unused properties and fix tests
10 years ago
Naglis Jonaitis
91757b0f37
[utils] Escape all HTML entities written in hexadecimal form
10 years ago
Philipp Hagemeister
f5e2efbbf0
[options] Handle special characters in argv ( Fixes #5157 )
10 years ago
Jaime Marquínez Ferrándiz
f9544f6e8f
[test/aes] Test aes_decrypt_text with 256 bit
10 years ago
Jaime Marquínez Ferrándiz
5379a2d40d
[test/utils] Test xpath_text
10 years ago
Jaime Marquínez Ferrándiz
a7d9ded45d
[test] Add tests for aes
10 years ago
Jaime Marquínez Ferrándiz
531980d89c
[test/YoutubeDL] test match_filter
10 years ago
Jaime Marquínez Ferrándiz
f20bf146e2
[test/YoutubeDL] split in two classes
...
The name was misleading
10 years ago
Jaime Marquínez Ferrándiz
01218f919b
[test/http] Add test for proxy support
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
Jaime Marquínez Ferrándiz
8508557e77
[test/YoutubeDL] Use valid urls
...
It failed on python 3.4 when building the http_headers field
10 years ago
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
10 years ago