Yen Chi Hsuan
87f0e62d94
[utils] Separate codes for handling Youtubedl-* headers
9 years ago
Sergey M․
67dda51722
Rename compat_urllib_request_Request to sanitized_Request and move to utils
9 years ago
Sergey M․
9cb9a5df77
[utils] Check ext with trailing slash against the list of known extensions
9 years ago
Sergey M․
3e12bc583a
[utils] Improve determine_ext ( Closes #7593 )
9 years ago
Sergey M․
7e1f5447e7
[utils] Improve encode_dict
9 years ago
Sergey M․
7a3f0c00ad
[utils] Style
9 years ago
Sergey M․
7aefc49c40
[utils] Skip invalid/non HTML entities ( Closes #7518 )
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․
c90d16cf36
[utils:sanitize_path] Disallow trailing whitespace in path segment ( Closes #7332 )
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․
ae12bc3ebb
[utils] Make unified_strdate always return unicode string
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
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
Sergey M․
d01949dc89
[utils:js_to_json] Fix bad escape in double quoted strings
9 years ago
Yen Chi Hsuan
1e399778ee
[letv] Fix extraction
...
Using data URIs for passing the decrypted M3U8 manifest, which is
supported by ffmpeg only.
9 years ago
Sergey M․
af98f8ff37
[utils] Return default on fail in int_or_none
9 years ago
Sergey M․
caf80631f0
[utils] Do not fail in float_or_none on non-numeric data
9 years ago
Sergey M․
1812afb7b3
[utils] Do not fail in int_or_none on non-numeric data ( Closes #7175 )
9 years ago
Sergey M․
5a1a2e9454
[utils] Fix kwargs on old python 2 ( Closes #6905 )
9 years ago
Sergey M․
e28034c5ac
[utils] Comment cookie processing until result from travis and some more testing
9 years ago
Sergey M․
266e466ee4
[utils] Simplify cookie processor
9 years ago
Sergey M․
1639282434
[utils] Add encode_dict
9 years ago
Sergey M․
ad72917274
[utils] Add issue URL in comment for #6457
9 years ago
Sergey M․
a6420bf50c
[utils] Add cookie processor for cookie correction ( Closes #6769 )
9 years ago
Sergey M․
66e289bab4
[utils] Generalize cli option converters
9 years ago
Sergey M․
8e636da499
[utils] Improve xpath_text
9 years ago
Sergey M․
5d2354f177
[utils] Relax attribute key assert
9 years ago
Sergey M․
a41fb80ce1
[utils] Add xpath_element and xpath_attr
9 years ago
Sergey M․
e5e78797e6
[utils] Strict HTTP responses ( Closes #6727 )
9 years ago
Sergey M․
5a4d9ddb21
[utils] Percent-encode redirect URL of Location header ( Closes #6457 )
9 years ago
Sergey M․
51f267d9d4
[YoutubeDL:utils] Move percent encode non-ASCII URLs workaround to http_request and simplify ( Closes #6457 )
9 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]`
9 years ago
Raphael Michel
2c7ed24796
Remove redundant (and wrong) class parameters
9 years ago
Yen Chi Hsuan
9c29bc69f7
[utils] Improve parse_duration
...
Now dots are parsed. For example '87 Min.'
9 years ago
Sergey M․
bf42a9906d
[utils] Add default value for xpath_text
9 years ago
Yen Chi Hsuan
4eb10f6621
[utils] Add ISO3166Utils
9 years ago
Yen Chi Hsuan
4e33577173
[utils] Support ttaf1 namespace in TTML
...
It's found in bbc.co.uk. See #6038
10 years ago
Yen Chi Hsuan
396726244a
[utils/ffmpeg] Move ISO 639 related codes to utils
10 years ago
Yen Chi Hsuan
ecee572411
[yahoo] Add support for closed captions ( closes #5714 )
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
c1c924abfe
[utils,common] Merge format_srt_time and _subtitles_timecode
...
format_srt_time uses a comma as the delimiter between seconds and
milliseconds while _subtitles_timecode uses a dot. All .srt examples I
found on the Internet uses a comma, so I use a comma in the merged
version. See http://matroska.org/technical/specs/subtitles/srt.html and
http://devel.aegisub.org/wiki/SubtitleFormats/SRT
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
Jaime Marquínez Ferrándiz
541168039d
[utils] get_exe_version: encode executable name ( fixes #5647 )
...
It failed in python 2.x when $PATH contains a directory with non-ascii characters.
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․
e65e4c8874
[utils] Improve prepend_extension
...
Now `ext` is appended to filename if real extension != expected extension.
10 years ago
Sergey M․
c86b61428b
[utils] Fix another old python 2.6 kwargs issue ( Closes #5539 )
10 years ago
Sergey M.
40b96352c9
Merge pull request #5523 from jaimeMF/remove-format-limit
...
Remove the --max-quality option
10 years ago
Sergey M․
aa49acd15a
[utils] Add `get_subprocess_encoding` and filename/argument decode counterparts
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
Jaime Marquínez Ferrándiz
08f2a92c9c
InfoExtractor._search_regex: Suggest updating when the regex is not found (suggested in #5442 )
...
Reuse the same message from ExtractorError
10 years ago
Sergey M․
be531ef1ec
[utils] Fix splitunc deprecation warning
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․
15ac8413c7
[utils] Avoid treating `*-%Y` date template as UTC offset
10 years ago
Sergey M․
79c21abba7
[utils] Add one more template to unified_strdate
10 years ago
Sergey M․
ba9e68f402
[utils] Drop trailing comma before closing brace
10 years ago
Jaime Marquínez Ferrándiz
70a1165b32
Don't use bare 'except:'
...
They catch any exception, including KeyboardInterrupt, we don't want to catch it.
10 years ago
Naglis Jonaitis
91757b0f37
[utils] Escape all HTML entities written in hexadecimal form
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․
d55de57b67
[utils] Fix sanitize_open
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
Philipp Hagemeister
2461f79d2a
[utils] Correct per-request proxy handling
10 years ago
Philipp Hagemeister
91410c9bfa
[letv] Add --cn-verification-proxy ( Closes #5077 )
10 years ago
Philipp Hagemeister
a7440261c5
[utils] Streap leading dots
...
Fixes #2865 , closes #5087
10 years ago
Jaime Marquínez Ferrándiz
003c69a84b
Use shutil.get_terminal_size for getting the terminal width if it's available (python >= 3.3)
10 years ago
Philipp Hagemeister
3e675fabe0
[airmozilla] Be more tolerant when nonessential items are missing ( #5030 )
10 years ago
Philipp Hagemeister
183139340b
[utils] Bump our user agent
10 years ago
Philipp Hagemeister
5a42414b9c
[utils] Prevent hyphen at beginning of filename ( Fixes #5035 )
10 years ago
Philipp Hagemeister
8fb3ac3649
PEP8: W503
10 years ago
Philipp Hagemeister
c460bdd56b
[sandia] Add new extractor ( #4974 )
10 years ago
Philipp Hagemeister
d305dd73a3
[utils] Fix js_to_json
...
Previously, the runtime could be atrocious for longer inputs.
10 years ago
Yen Chi Hsuan
7105440cec
[Yam] Add new extractor
10 years ago
Philipp Hagemeister
08b38d5401
[camdemy] Simplify and make more robust ( #4938 )
...
Do not throw errors if view count or upload date extraction fails.
Dispose of re.MULTILINE, which had absolutely no effect without any ^ or $ in sight.
Follow PEP8 naming conventions.
10 years ago
Philipp Hagemeister
347de4931c
[YoutubeDL] Add generic video filtering ( Fixes #4916 )
...
This functionality is intended to eventually encompass the current format filtering.
10 years ago
Philipp Hagemeister
9bb8e0a3f9
[wsj] Add new extractor ( Fixes #4854 )
10 years ago
Philipp Hagemeister
8f4b58d70e
[ntvde] Add new extractor ( Fixes #4850 )
10 years ago
Philipp Hagemeister
8f9312c387
Appease pyflakes8-3
10 years ago
Jaime Marquínez Ferrándiz
4f264c02c7
[utils] YoutubeDLHTTPSHandler.https_open: pass all required arguments to do_open
...
With this change the '--no-check-certificate' works again (#4807 ).
10 years ago
Philipp Hagemeister
cfb56d1af3
Add --list-thumbnails
10 years ago
Jaime Marquínez Ferrándiz
3fcfb8e9fa
[utils] YoutubeDLHandler: don't use 'Youtubedl-user-agent' for overriding the default user agent
...
Setting the 'User-Agent' header is enough
10 years ago
Philipp Hagemeister
a055469faf
[downloader] Improve downloader selection
10 years ago
Philipp Hagemeister
aa42e87340
[utils] Catch strange Windows errors ( Closes #4733 )
10 years ago
Philipp Hagemeister
d79323136f
[utils] Simplify HTTPS socket creation
...
We were duplicating (bad) code and doing crazy things with SSL.
Just use TLSv1 across the board, and do with one implementation of HTTPSConnection.connect.
Fixes #4696 .
10 years ago
Philipp Hagemeister
ba655a0e4c
Merge remote-tracking branch 'derrotebaron/master'
10 years ago
Philipp Hagemeister
61ca9a80b3
[generic] Add support for BOMs ( Fixes #4753 )
10 years ago
Philipp Hagemeister
b55ee18ff3
[hearthisat] Add support for more high-quality download links
10 years ago
Philipp Hagemeister
9d22a7dfb0
[fourtube] Fix extraction
10 years ago
Philipp Hagemeister
be5f2c192c
[ssl] Correct connect creation
...
We want to authenticate the server, see https://docs.python.org/dev/library/ssl.html#ssl.Purpose.SERVER_AUTH .
10 years ago
Naglis Jonaitis
a69801e2c6
[utils] Add additional format to unified_strdate
10 years ago
Johannes Knoedtel
3d5f7a3947
[utils] Prevent override of custom headers.
...
The dict of headers of request objects in urllib has its keys always
capitalized.
This causes the lookup to fail and overwrite the header. If for example
a Extractor tries to add a "User-Agent" header the internal
representation in the request object is "User-agent". The header is
therefore clobbered by the "User-Agent" in std_headers, because the
strings are not equal.
10 years ago
Sergey M․
227d4822ff
[utils] Disallow non string types in parse_duration ( Closes #4679 )
10 years ago
Philipp Hagemeister
2aeb06d6dc
[utils] Improve colon handling ( Fixes #4683 )
10 years ago
Philipp Hagemeister
c5a59d9391
[utils] Fix call to _create_http_connection
...
Avoid confusion over args/kwargs.
10 years ago
Philipp Hagemeister
be4a824d74
Add new option --source-address
...
Closes #3618 , fixes #721 , fixes #2481 , fixes #4551 , closes #1020 .
10 years ago
Sergey M․
776dc3992a
[utils] Clarify more day-month-first ambiguous formats
10 years ago
Philipp Hagemeister
dd622d7c4e
[netzkino] Add new extractor ( Fixes #4669 )
10 years ago
Philipp Hagemeister
0590062925
Respect age_limit when listing extractors ( Fixes #4653 )
10 years ago
Jaime Marquínez Ferrándiz
1d2d0e3ff2
utils: Remove blank line at the end of file
10 years ago
Philipp Hagemeister
2ccd1b10e5
[soulanime] Fix under Python 3
10 years ago
Philipp Hagemeister
416c7fcbce
Add documentation about supported sites ( Fixes #4503 )
10 years ago
Philipp Hagemeister
7af808a5ef
Improve code style
10 years ago
Philipp Hagemeister
cae97f6521
Improve and test ffmpeg version detection
10 years ago
Philipp Hagemeister
2128b696b8
[utils] Do not make an exception for SSLv3
...
SSLv3 is terminally vulnerable to POODLE; web browsers are currently deprecating/removing it.
Closes #4459 , fixes #4294
10 years ago
Philipp Hagemeister
a23669220a
[utils] Make ssl work on Python 2.7.8
10 years ago
Jaime Marquínez Ferrándiz
293f0f39ce
[utils] make_HTTPS_handler: Remove try/except block that would always raise an exception
...
This code is only run for Python < 3.4, where context.load_default_certs doesn't exist
10 years ago
Jaime Marquínez Ferrándiz
0db261ba56
[utils] make_HTTPS_handler: Use ssl.create_default_context in Python 2.7.9
...
The new features in the ssl module have been backported from 3.4, see https://docs.python.org/dev/whatsnew/2.7.html#pep-466-network-security-enhancements-for-python-2-7
10 years ago
Philipp Hagemeister
f8780e6d11
Merge remote-tracking branch 'grompe/patch-1'
10 years ago
Philipp Hagemeister
e2f89ec7aa
Revert "[utils] Work around PyPy stupidity with Windows DLLs ( Fixes #4392 )"
...
This reverts commit 16040f46d6
.
10 years ago
Philipp Hagemeister
16040f46d6
[utils] Work around PyPy stupidity with Windows DLLs ( Fixes #4392 )
10 years ago
Philipp Hagemeister
42bdd9d051
[cinchcast] Add new extractor ( Fixes #4428 )
10 years ago
Philipp Hagemeister
f8795e102b
[utils] Add "yesterday" as a date keyword
10 years ago
Jaime Marquínez Ferrándiz
83e865a370
Fix PEP8 issue E713
10 years ago
Grom PE
6ac4e8065a
Fix utils.py for PyPy on Windows
...
The line
```python
from __future__ import unicode_literals
```
introduced in commit [ecc0c5ee01
](ecc0c5ee01
) broke youtube-dl for PyPy on Windows, making it unable to locate WinAPI functions.
Error: "TypeError: function name must be a string or integer"
Adding "b" prefix to strings with WinAPI function names fixes it.
10 years ago
Philipp Hagemeister
5f9b83944d
[ffmpeg] Improve version check and call it from hls ( Fixes #4377 )
10 years ago
Philipp Hagemeister
e8df5cee12
[minhateca] Fix duration parsing
10 years ago
Philipp Hagemeister
4349c07dd7
[minhateca] Add extractor ( Fixes #4094 )
10 years ago
Philipp Hagemeister
ab4ee31eb1
[utils] remove useless u prefix
10 years ago
Philipp Hagemeister
be64b5b098
[xminus] Simplify and extend ( #4302 )
10 years ago
Philipp Hagemeister
b74e86f48a
Fix all PEP8 issues except E501
10 years ago
Jouke Waleson
5f6a1245ff
PEP8 applied
10 years ago
Philipp Hagemeister
7d4111ed14
Provide guidance when called with a YouTube ID starting with a dash.
...
Reported at https://news.ycombinator.com/item?id=8648121
10 years ago
Philipp Hagemeister
732ea2f09b
[utils] Improve update on error message somewhat
...
We still may want to implement a bulletproof check for the current version, and a better place to add this message so that it works for all kind of other errors too.
10 years ago
Ivan Kozik
1394646a0a
Fix "ERROR: Cannot write metadata to JSON file" on Windows
...
Fixes #4246
10 years ago
Ivan Kozik
61ee5aeb73
Fix UnicodeEncodeError with --write-info-json on Python 2.7 + Windows
...
Fixes #4244
10 years ago
Jaime Marquínez Ferrándiz
92120217eb
[cache] Fix writing to paths with unicode characters
...
* Use "compat_getenv"
* "write_json_file" now expects the filename to be a string
10 years ago
Philipp Hagemeister
28e614de5c
[utils] Remove stray u'
10 years ago
Philipp Hagemeister
6a68bb574a
[eporner] Fix duration ( Closes #4188 )
10 years ago
Jaime Marquínez Ferrándiz
ec5f601670
[utils] Fix "write_json_file" for unicode names in python 2.x ( fixes #4125 )
10 years ago
Philipp Hagemeister
eb4157fd17
[utils] Fix struct.pack call on very old Python versions ( #4181 )
10 years ago
Philipp Hagemeister
609a61e3e6
[npo] Improve npo.nl ( Fixes #4173 )
10 years ago
Philipp Hagemeister
4c0924bb24
[utils] Fix intlist_to_bytes in Python 2 ( #4181 )
10 years ago
Philipp Hagemeister
4164f0117e
[utils] Remove unused import
10 years ago
Philipp Hagemeister
3828505646
[utils] Use a regexp instead of HTMLParser for get_element_by_attribute
10 years ago
Philipp Hagemeister
12ea2f30cf
[utils] Remove unused get_meta_content function
10 years ago
Jaime Marquínez Ferrándiz
4f195f55f0
Do not override stdlib html parser 'locatestarttagend' regex ( fixes #4081 )
...
'<a href="foo" ><img src="bar" / ></a>' wouldn't be parsed right (the problem is '/ >', '/>' worked fine).
We need to change it in python 2.6 (for example the description of youtube videos wouldn't be extracted).
10 years ago
Philipp Hagemeister
ecc0c5ee01
[utils] Modernize
10 years ago
Philipp Hagemeister
baa708036c
[compat] Fix imports
10 years ago
Philipp Hagemeister
8c25f81bee
[util] Move compatibility functions out of util
...
utils is large enough without these compatibility functions.
Everything that is present in newer versions of Python (i.e. with dev Python it's just an import) goes into compat.py .
Everything else (i.e. youtube-dl-specific helpers) goes into utils.py .
10 years ago
Philipp Hagemeister
9580711841
[ffmpeg] Move version detection to utils
10 years ago
Philipp Hagemeister
6ad4013d40
[drtv] Allow fractional timestamps ( Fixes #4059 )
10 years ago
Philipp Hagemeister
488447455d
[ffmpeg] Warn if ffmpeg/avconv version is too old ( Fixes #4026 )
10 years ago