Commit Graph

607 Commits (fddb4a3a8bdce63c03566eda3a96916d4cd02315)

Author SHA1 Message Date
Yen Chi Hsuan 4eb10f6621 [utils] Add ISO3166Utils 10 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
Sergey M․ f889cea109 Merge branch 'compat-getenv-and-expanduser' of https://github.com/dstftw/youtube-dl into dstftw-compat-getenv-and-expanduser
Conflicts:
	test/test_utils.py
	youtube_dl/__init__.py
10 years ago
Naglis Jonaitis e9be9a6acd [utils] Add additional format to unified_strdate 10 years ago
Philipp Hagemeister d838b1bd4a [utils] Default age_limit to None
If we can't parse it, it means we don't have any information, not that the content is unrestricted.
10 years ago
Sergey M․ 146c80e256 [utils] Add parse_age_limit 10 years ago
Sergey M․ fc66e4a0d5 [utils] Add posix expanduser implementation and clarify the original source 10 years ago
Philipp Hagemeister e7b6d12254 [utils] Improve and test js_to_json 10 years ago
Philipp Hagemeister 410f3e73ab [utils] Fix js_to_json 10 years ago
Sergey M․ 4644ac5527 [core] Decode environment variables with filesystem encoding (Fixes #3854, Fixes #3217, Fixes #2918)
Introduces compat versions of os.getenv and os.path.expanduser
10 years ago
Philipp Hagemeister 99b67fecc5 [arte] Fix upload date extraction 10 years ago
Philipp Hagemeister 989b4b2b86 [utils:YoutubeDLHandler] Work around brain-dead Python 2.6 httplib
In 2.6, the httplib sends fragments! Remove those (fixes generic_26 on 2.6).
10 years ago
Philipp Hagemeister 9c44d2429b [vimeo:likes] Support large like lists (Fixes #3847) 10 years ago
Philipp Hagemeister 0003a5c416 Merge remote-tracking branch 'dstftw/escape-non-ascii-in-urls'
Conflicts:
	test/test_utils.py
10 years ago
Philipp Hagemeister a020a0dc20 [facebook] Fix support for untitled videos (Fixes #3757) 10 years ago
Sergey M․ 984e8e14ea [utils] Remove debug garbage 10 years ago
Sergey M․ d05cfe0600 [YoutubeDL/utils] Clarify rationale for URL escaping in comment, move escape routines to utils and add some tests 10 years ago
Philipp Hagemeister d74bebd502 [utils] Apply 2.6 xpath craziness
This fixes ARD on 2.6
10 years ago
Philipp Hagemeister bf0ff93277 [ard] Make more robust against missing thumbnails
I cannot reproduce this error, it's from travis.
10 years ago
Philipp Hagemeister 4eefbfdbfd [utils] Fix find_xpath_attr on 2.6 10 years ago
Philipp Hagemeister aa37e3d486 [utils] Default SSL to TLS. (Fixes #3727)
On 2.x, we now try TLS first, and fall back to the compat 23 (basically anything) afterwards.
On 3.4+, we now use the proper function so that we get all the latest security configurations.
We allow SSLv3 though for the time being, since a lot of older pages use that.
On 3.3, we default to SSLv23 (basically "anything, including TLS") because that has the widest compatibility.
10 years ago
Philipp Hagemeister a0e07d3161 [youtube] Move cache into its own module 10 years ago
Sergey M․ f164038b79 [utils] Make parse_duration case insensitive 10 years ago
Sergey M․ 884ae74785 [tvigle] Adapt to the new API 10 years ago
Philipp Hagemeister 2582bebe06 [utils] Use flock instead of lockf (Fixes #3621) 10 years ago
Philipp Hagemeister 48d4681efc [eporner] Simplify and correct (#3629) 10 years ago
Sergey M․ ca7b3246b6 [utils] Improve parse_duration 10 years ago
Philipp Hagemeister 4e408e479b [utils] Modernize tests 10 years ago
Philipp Hagemeister 33ac271ba7 [utils] Let request headers override standard headers
What was I thinking when writing this?
10 years ago
Philipp Hagemeister 0990305d2a [generic] Fix rss under Python 2.x and move test to extractor 10 years ago
Philipp Hagemeister 7adcbe7594 [rtlnl] Extract duration 10 years ago
Philipp Hagemeister 8d31fa3cce [execafterdownload] Simplify (#3569) 10 years ago
Philipp Hagemeister 423817c468 [expotv] Add new extractor (Fixes #3552) 10 years ago
Philipp Hagemeister 2b9faf5542 [rtve] Add support for live stream
At the moment, only RTVE-1 seems to work flawlessly.
-2 seems geoblocked right now.
-TDP doesn't seem to be available outside of Spain.
10 years ago
Philipp Hagemeister e05f693942 [patreon] Simplify (#3390) 10 years ago
Sergey M․ 73159f99cc [utils] Add missing mode and encoding arguments 10 years ago
Philipp Hagemeister 181c8655c7 [utils] Make JSON file writes atomic (Fixes #3549) 10 years ago
Sergey M․ fe556f1b0c [jove] Simplify, extract full description and add test for video that requires subscription 10 years ago
Philipp Hagemeister 9572013de9 [appletrailers] Support height-less videos 10 years ago
Jaime Marquínez Ferrándiz 40a90862f4 [reverbnation] The 'uploader_id' field must be a string 10 years ago
Sergey M․ f4776371ae [izlesene] Minor changes 10 years ago
Philipp Hagemeister cbf915f3f6 [livestream] Parse SMIL (#2713) 10 years ago
Philipp Hagemeister f1f725c6a0 [dropbox] Fix title encoding on Python 2 11 years ago
Philipp Hagemeister 9732d77ed2 [snotr] PEP8 and minor fixes (#3296) 11 years ago
Sergey M․ c45a6caa95 [utils] Add None check in str_to_int 11 years ago
Filippo Valsorda 816930c485 Fix utils.strip_jsonp 11 years ago
Filippo Valsorda 36cb99f958 [ReverbNation] Add new IE - closes #2250 11 years ago
Philipp Hagemeister fa19dfccf9 Merge remote-tracking branch 'tobidope/gameone' 11 years ago
Petr Půlpán 78ff59d052 [Motherless] simplify 11 years ago
Tobias Bell 305d068362 [gameone] Added timestamp extraction 11 years ago
Philipp Hagemeister f07b74fc18 [ffmpeg] Correct argument encoding on Windows with Python 2.x
Fixes #2924
11 years ago
Philipp Hagemeister 0a871f6880 Provide compatibility check_output for 2.6 (Fixes #2926) 11 years ago
Philipp Hagemeister a383a98af6 [utils/_windows_write_string] Be defensive about fileno (Fixes #2820) 11 years ago
Philipp Hagemeister acd69589a5 [YoutubeDL] Do not require default output template to be set 11 years ago
Philipp Hagemeister d11271dd29 [youtube] Include video Id in common error message (Fixes #2786) 11 years ago
Philipp Hagemeister 28746fbd59 [bilibili] Add preliminary support (#2174)
The URL http://www.bilibili.tv/video/av636603/index_2.html does not work yet.
11 years ago
Philipp Hagemeister 478c2c6193 [clubic] Add extractor (Fixes #2773) 11 years ago
Philipp Hagemeister d1b9c912a4 [utils] Fix _windows_write_string (Fixes #2779)
It turns out that the function did not work for outputs longer than 1024 UCS-2 tokens.
Write non-BMP characters one by one to ensure that we count correctly.
11 years ago
Philipp Hagemeister 89938c719e Fix Windows output for non-BMP unicode characters 11 years ago
Philipp Hagemeister b58ddb32ba [utils] Completely rewrite Windows output (Fixes #2672) 11 years ago
Philipp Hagemeister 104aa7388a Use our own encoding when writing strings 11 years ago
Philipp Hagemeister 734f90bb41 Use --encoding when outputting 11 years ago
Philipp Hagemeister 676eb3f2dd Fix unicode_escape (Fixes #2695) 11 years ago
Philipp Hagemeister 9271bc8355 [cnet] Add new extractor (Fixes #2679) 11 years ago
Philipp Hagemeister a612753db9 [utils] Correct decoding of large unicode codepoints in uppercase_escape (Fixes #2664) 11 years ago
Philipp Hagemeister 62fec3b2ff Add new --encoding option (Fixes #2650) 11 years ago
Philipp Hagemeister 43f775e4ca [comedycentral] Duration can now be a float (Fixes #2647) 11 years ago
Philipp Hagemeister fac55558ad [washingtonpost] Add extractor (Fixes #2622) 11 years ago
Philipp Hagemeister ba40a74666 [clipfish] Modernize 11 years ago
Philipp Hagemeister 912b38b428 [instagram] Fix info_dict key name 11 years ago
Philipp Hagemeister 6eefe53329 [utils] Simplify setproctitle 11 years ago
Philipp Hagemeister 64e7ad6045 [videolectures] (New extractor) 11 years ago
Philipp Hagemeister a1a530b067 [pbs] Add support for video ratings 11 years ago
Philipp Hagemeister 4e6f9aeca1 Fix typo 11 years ago
Philipp Hagemeister e68301af21 Fix getpass on Windows (Fixes #2547) 11 years ago
Sergey M․ b047de6f6e Add format to unified_strdate 11 years ago
Philipp Hagemeister bcf89ce62c [generic] Suppress warning about doctypes in RSS parser 11 years ago
Jaime Marquínez Ferrándiz b74fa8cd2c [facebook] Fix login process
It was broken and didn't work in python 3.
And use `_download_webpage` instead of `compat_urllib_request.urlopen`.
11 years ago
Sergey M. 4cf9654693 Add one more format to unified_strdate 11 years ago
Philipp Hagemeister 62e609ab77 Ignore BOM in batch files (Fixes #2450) 11 years ago
Sergey M. 7ff5d5c2e2 Add one more format to unified_strdate 11 years ago
Jaime Marquínez Ferrándiz f7300c5c90 [generic] Fix on python 2.6
`ParseError` is not available, it raises `xml.parsers.expat.ExpatError`.
The webpage needs to be encoded.
11 years ago
Sergey M. 0f99566c01 Add one more format in unified_strdate 11 years ago
Sergey M. 2db806b4aa Improve parse_duration 11 years ago
Philipp Hagemeister b53466e168 Fix f4m downloading on Python 2.6 11 years ago
Philipp Hagemeister 026fcc0495 Fix #2355 (date parsing with dashes) 11 years ago
Philipp Hagemeister 81c2f20b53 [youtube] Correct invalid JSON (Fixes #2353) 11 years ago
Philipp Hagemeister 5de90176d9 [elpais] Add extractor 11 years ago
Philipp Hagemeister dd26ced164 Add __len__ to PagedLists 11 years ago
Philipp Hagemeister 65697b3bf3 Merge branch 'paged-lists'
Conflicts:
	test/test_utils.py
	youtube_dl/extractor/youtube.py
11 years ago
Philipp Hagemeister 50317b111d Merge branch 'youtube-dash-manifest'
Conflicts:
	youtube_dl/extractor/youtube.py
11 years ago
Philipp Hagemeister af1588c05f [mtv] Update tests and xpath function for new title extraction 11 years ago
Philipp Hagemeister 00122de6a9 [gametrailers/mtv] Fix pre-3.x compatibility function for find_xpath_attr
Fixes #2189
11 years ago
Philipp Hagemeister 5aafe895fc Correct XML ampersand fixup 11 years ago
Philipp Hagemeister b7ab059084 Add infrastructure for paged lists
This commit allows to download pages in playlists as needed instead of all at once.
Before this commit,
    youtube-dl http://www.youtube.com/user/ANNnewsCH/videos --playlist-end 2 --skip-download
took quite some time - now it's almost instantaneous.
As an example, the youtube:user extractor has been converted.
Fixes #2175
11 years ago
Philipp Hagemeister dd27fd1739 [youtube] Download DASH manifest
If given, download and parse the DASH manifest file, in order to get ultra-HQ formats.
Fixes #2166
11 years ago
Philipp Hagemeister d70ad093af Move check_executable into a helper ufnction 11 years ago
Philipp Hagemeister 5f263296ea Merge remote-tracking branch 'epitron/metadata-pp'
Conflicts:
	youtube_dl/PostProcessor.py
11 years ago
Philipp Hagemeister 79f8295303 Use original Referer URL in Brightcove requests (Fixes #2110) 11 years ago
Philipp Hagemeister 5d73273f6f [orf] Use new extraction method (Fixes #2057) 11 years ago
Philipp Hagemeister 8bf48f237d Fix/work around Windows encoding issues (Fixes #2095) 11 years ago
Jaime Marquínez Ferrándiz 91d7d0b333 FFmpegMetadataPP; Write temporary file to `something.temp.{ext}` (fixes #2079)
ffmpeg correctly recognize the formats of extensions like m4a, but it doesn’t works if it’s passed with the `—format` option.
11 years ago
epitron e63fc1bed4 Added '--xattrs' option which writes metadata to the file's extended attributes using a youtube-dl postprocessor.
Works on Linux, OSX, and Windows.
11 years ago
Philipp Hagemeister a0ddb8a2fa Add new --print-traffic option 11 years ago
Philipp Hagemeister 608d11f515 [cnn] Add multiple formats, duration, and upload_date 11 years ago
Philipp Hagemeister 7217e148fb [yahoo] Use centralized sorting, and add tbr field 11 years ago
Philipp Hagemeister aa94a6d315 [aparat] Add support (Fixes #2012) 11 years ago
Philipp Hagemeister e029b8bd43 [utils] Remove duplicated line
This line was added by accident in 42393ce234
11 years ago
Jaime Marquínez Ferrándiz 9b8aaeed85 Simplify url_basename
Use urlparse from the standard library.
11 years ago
Philipp Hagemeister 42393ce234 Add support for direct links to a video (#1973) 11 years ago
Philipp Hagemeister d6c7a367e8 [utils] Fix url_basename 11 years ago
Philipp Hagemeister 29eb517403 Add webpage_url_basename info_dict field (Fixes #1938) 11 years ago
Philipp Hagemeister e64eaaa97d Fix execution under Python 3 11 years ago
Philipp Hagemeister d7dda16888 [blinkx] Add extractor (Fixes #1972) 11 years ago
Philipp Hagemeister e3946f989e Set process title to youtube-dl
This allows killing all youtube-dl processes with killall youtube-dl, and shows up nicer in some programs.
11 years ago
Philipp Hagemeister 2a203a6cda Merge pull request #1956 from dstftw/master
Fix typo in month name
11 years ago
dst dadb8184e4 Fix typo in month name 11 years ago
Jaime Marquínez Ferrándiz 1825836235 Use `_download_xml` in more extractors 11 years ago
Philipp Hagemeister caefb1de87 [ndtv] Add extractor (Fixes #1924) 11 years ago
Philipp Hagemeister 1c088fa89d Improve --bidi-workaround support 11 years ago
Philipp Hagemeister ac79fa02b8 Restore Python 2.6.<6 compatibility (Fixes #1860) 11 years ago
Philipp Hagemeister 303b479e0a Automatically load SSL certs on Windows 11 years ago
Jaime Marquínez Ferrándiz f53c966a73 [dailymotion] Extract view count (#1895) 11 years ago
Philipp Hagemeister a1ef7e85d6 Remove unused imports 11 years ago
Philipp Hagemeister 2a275ab007 [zdf] Use _download_xml 11 years ago
Philipp Hagemeister de79c46c8f [viki] Fix subtitle extraction 11 years ago
Philipp Hagemeister 79d09f47c2 Merge branch 'opener-to-ydl' 11 years ago
Philipp Hagemeister 02dbf93f0e [zdf/common] Use API in ZDF extractor.
This also comes with a lot of extra format fields
Fixes #1518
11 years ago
Philipp Hagemeister e03db0a077 Merge branch 'master' into opener-to-ydl 11 years ago
Philipp Hagemeister 13ebea791f [niconico] Simplify and make work with old Python versions
The website requires SSLv3, otherwise it just times out during SSL negotiation.
11 years ago
Philipp Hagemeister dca0872056 Move the opener to the YoutubeDL object.
This is the first step towards being able to just import youtube_dl and start using it.
Apart from removing global state, this would fix problems like #1805.
11 years ago
Jaime Marquínez Ferrándiz a6a173c2fd utils.shell_quote: Convert the args to unicode strings
The youtube test video failed with `UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 34: ordinal not in range(128)`, the problem was with the filenames being encoded.
11 years ago
Philipp Hagemeister 5904088811 Add support for tou.tv (Fixes #1792) 11 years ago
Philipp Hagemeister ae8f787141 Remove iPhone from user agent. This breaks a lot of extractors
In the future, it might be worth investigating whether we get better content when we claime to be an iPhone.
11 years ago
Philipp Hagemeister 96b31b6533 Add iPhone to UA (#1746) 11 years ago
Jaime Marquínez Ferrándiz 55b3e45bba [vimeo] Fix pro videos and player.vimeo.com urls
The old process can still be used for those videos.
Added RegexNotFoundError, which is raised by _search_regex if it can't extract the info.
11 years ago
Philipp Hagemeister f4d96df0f1 Extend #980 with --max-quality support 11 years ago
Philipp Hagemeister 9d4660cab1 [generic] Support embedded vimeo videos (#1602) 11 years ago
Jaime Marquínez Ferrándiz d7e66d39a0 Add an extractor for internetvideoarchive.com videos
It's used by videodetective.com
11 years ago
Jaime Marquínez Ferrándiz 4eb7f1d12e FFmpegPostProcessor: print the command line used if the --verbose option is given 11 years ago
Jaime Marquínez Ferrándiz 2e1fa03bf5 Add an extractor for video.nhl.com (closes #1586) 11 years ago
Philipp Hagemeister b24f347190 Merge branch 'download-archive'
Conflicts:
	youtube_dl/YoutubeDL.py
	youtube_dl/__init__.py
11 years ago
Philipp Hagemeister 41e8bca4d0 [viddler] Add basic support (Fixes #1520) 11 years ago
Philipp Hagemeister c1c9a79c49 Add basic --download-archive option
Often, users want to be able to download only videos they haven't seen before, despite the video files having been deleted or moved in the mean time.
When --download-archive FILE is given, the extractor and ID of every download is recorded in the specified file. If it is already present, the video in question is skipped.
11 years ago
Philipp Hagemeister c38b1e776d [youtube] Simplify cache_dir code (#1529) 11 years ago
Philipp Hagemeister e0df6211cc Restore accidentally deleted commits
That's what happens if you let Windows machines write :(
11 years ago
Philipp Hagemeister 7459e3a290 Always correct encoding when writing to sys.stderr (Fixes #1435) 11 years ago
Jaime Marquínez Ferrándiz 19e1d35989 [mixcloud] Rewrite extractor (fixes #278) 11 years ago
Jaime Marquínez Ferrándiz a921f40799 [ustream] Simplify channel extraction
the ChannelParser has been moved to a new function in utils get_meta_content
Instead of the SocialStreamParser now it uses a regex
11 years ago
Jaime Marquínez Ferrándiz 545434670b Add an extractor for orf.at (closes #1346)
Make find_xpath_attr also accept numbers in the value
11 years ago
Philipp Hagemeister c257baff85 Merge remote-tracking branch 'rzhxeo/youporn-hd'
Conflicts:
	youtube_dl/utils.py
11 years ago
rzhxeo cba892fa1f Add intlist_to_bytes to utils.py 11 years ago
Philipp Hagemeister 48ea9cea77 Allow changes to run under Python 3 11 years ago
Philipp Hagemeister c496ca96e7 Fix platform name in Python 2 with --verbose (Closes #1228) 11 years ago
Philipp Hagemeister aa3e950764 Tolerate junk at the end of gzip-compressed content (#1268) 11 years ago
Jaime Marquínez Ferrándiz 0e283428f7 HTTPError is in urllib.error in Python 3, not in http.error 11 years ago
Philipp Hagemeister 2eabb80254 [addanime] improve 11 years ago
Philipp Hagemeister acebc9cd6b Revert "Install our own HTTPS handler as well (#1309)"
This reverts commit 36399e8576 and fixes #1322.
11 years ago
Philipp Hagemeister 36399e8576 Install our own HTTPS handler as well (#1309) 11 years ago
Jaime Marquínez Ferrándiz d4051a8e05 Add a post processor for embedding subtitles in mp4 videos (closes #1052) 11 years ago
Philipp Hagemeister 298f833b16 Note update possibility on errors (thanks @chbrown, #1229) 11 years ago
Jaime Marquínez Ferrándiz bba12cec89 Add an extractor for videofy.me (closes #1171)
Also modify find_xpath_attr to accept values with spaces like for id="HQ on"
11 years ago
Jaime Marquínez Ferrándiz cbdbb76665 Use determine_ext when saving the thumbnail
Urls that contain a query produced filenames with wrong extensions
12 years ago
Jaime Marquínez Ferrándiz 6543f0dca5 BrightcoveIE: Use parse_qs to extract the fields of the query (closes #1032)
Add a compat_urlparse to utils.
12 years ago
Philipp Hagemeister 5de3ece225 [brightcove] fix on Python 2.6 12 years ago
Philipp Hagemeister 59ae56fad5 Add helper function find_path_attr 12 years ago
Philipp Hagemeister 73e79f2a1b [3sat] Add support (Fixes #1001) 12 years ago
Philipp Hagemeister 9a82b2389f Do not show bug report for errors that are to be expected (Closes #973) 12 years ago
Philipp Hagemeister a3c776203f Rewrote error message a bit to clarify 12 years ago
M.Yasoob Ullah Khalid 53f350c165 Changed the error message.
I changed the ExtractorError from ```msg = msg + u'; please report this issue on http://yt-dl.org/bug'``` to ```msg = msg + u'; please report this issue on http://yt-dl.org/bug with the complete output by running the same command with --verbose flag'```
Hopefully this will tell the users to report bugs with the complete output.
12 years ago
Filippo Valsorda 98bcd2834a improve generic and encrypted signature error messages 12 years ago
Filippo Valsorda d5979c5d55 do not ask the user to report network errors 12 years ago
Filippo Valsorda f5a290eed9 print "please report this issue on GitHub" on every ExtractorError 12 years ago
Filippo Valsorda 468e2e926b implement fallbacks and defaults in _search_regex 12 years ago
Filippo Valsorda b31756c18e Python 2 compat fixes for MyVideo.de rtmpdump downloads 12 years ago
Philipp Hagemeister f45c185fa9 Do not re-encode / to # if / is a platform separator, and correctly handle permission errors (Fixes #831) 12 years ago
Philipp Hagemeister ea6d901e51 Add --no-check-certificate (#814) 12 years ago
Philipp Hagemeister 4539dd30e6 twitch.tv chapters (#810): print out start and end time 12 years ago
Jaime Marquínez Ferrándiz 37254abc36 Allow to use relative dates in the format (now|today)[+-][0-9](day|week|month|year)(s)? (Closes #137)
Also fix DateRange not accepting ranges of one day.
12 years ago
Jaime Marquínez Ferrándiz bf50b0383e Fix some IEs that didn't return the uploade_date in the YYYYMMDD format
Create a function unified_strdate in utils.py to fix these problems
12 years ago
Jaime Marquínez Ferrándiz bd55852517 Allow to select videos to download by their upload dates (related #137)
Only absolute dates.
12 years ago
Filippo Valsorda e3700fc9e4 Merge pull request #736 from rg3/retry
Exception stacking and test retry
12 years ago
Filippo Valsorda 7decf8951c fix FunnyOrDieIE, MyVideoIE, TEDIE 12 years ago
Filippo Valsorda 898280a056 use sys.stdout.buffer only on Python3 12 years ago
Chirantan Ekbote 1ee9778405 Use sys.stdout.buffer instead of sys.stdout
sys.stdout defaults to text mode, we need to use the underlying buffer
instead when writing binary data.

Signed-off-by: Chirantan Ekbote <chirantan.ekbote@gmail.com>
12 years ago
Filippo Valsorda 8cc83b8dbe Bubble up all the stack of exceptions and retry download tests on timeout errors 12 years ago
Philipp Hagemeister 8271226a55 Fix --match-title and --reject-title decoding (Closes #690) 12 years ago
Philipp Hagemeister 3b024e17af Work around buggy HTML Parser in Python < 2.7.3 (Closes #662) 12 years ago
Philipp Hagemeister 6df40dcbe0 Guard against sys.getfilesystemencoding() == None (#503) 12 years ago