Commit Graph

569 Commits (6e74521d98e4824e56d6e4db902de07a75fa867f)

Author SHA1 Message Date
Ricardo Garcia 204c9398ab Merge Gavin van Lelyveld's patch for --playlist-start option
Ricardo Garcia 2962317dea Put back -b option as a placeholder with a warning message
Ricardo Garcia 268fb2bdd8 Consider the file downloaded if the size differs in less than 100 bytes (fixes issue )
Ricardo Garcia 101e0d1e91 Reorganize request code to make it a bit more robust
Ricardo Garcia f95f29fd25 Properly detect YouTube error messages to print them on screen (fixes issue )
Ricardo Garcia 06f34701fe Bump version number
Ricardo Garcia 5ce7d172d7 Restore support for the get_video method, fixing many issues
Ricardo Garcia 2e3a32e4ac Restore proper support for webm formats (fixes issue )
Ricardo Garcia 8190e3631b Bump version number
Ricardo Garcia e4db6fd042 Update user agent string
Ricardo Garcia 497cd3e68e Partially rewrite YouTube InfoExtractor after it stopped working
As part of the changes, the program now downloads the highest quality version
by default and uses fmt_url_map to decide which formats are really available.
Ricardo Garcia 460d8acbaa Remove some format command line options
Ricardo Garcia 9bf7fa5213 Do not check for self._downloader being None in several places
Ricardo Garcia 73f4e7afba Rename UnavailableFormatError to UnavailableVideoError
Ricardo Garcia 9715661c19 Use www. instead of uk. in the language setting webpage for YouTube
Ricardo Garcia 14912efbb7 Bump version number
Ricardo Garcia 96942e6224 Modify User-Agent and Accept headers
Ricardo Garcia df372a655f Improve video ordinal assignment method (fixes issue )
Ricardo Garcia 9e9647d9a1 Add comment about weird .video extension for format 38
Ricardo Garcia 8da0080d36 Support youtu.be URLs (fixes issue )
Ricardo Garcia 57edaa5bac Support the watch_popup syntax in YouTube URLs
Ricardo Garcia 823fcda12a Improve swf player URL detection for RTMP (fixes issue )
Ricardo Garcia f2413e6793 Add a --max-quality flag to limit the highest quality (fixes issue )
Ricardo Garcia c833bb97dc Add support for "original" format in YouTube (fixes issue )
Ricardo Garcia 7e2dd306fe Make the Dailymotion uploader regexp more flexible because it fails sometimes
Ricardo Garcia dea147f78e Remove unused methods from the Dailymotion InfoExtractor
Witold Baryluk 08cf5cb80b Remove dead disclaimer/confirmation code.
I do knot know how to perform age confirmation, so just
removeing it for the time we will know how to do this.
Witold Baryluk 4135fa4585 Add support for the Dailymotion
Based slightly (idea and one regular expression) on the old anonymous
dailymotion-dl.pl, but with fixes (more robust regular expression,
extracting author, support for domains other than .com). Simpler
due to the fact that youtube-dl provides all needed functionalities.
Ricardo Garcia fd8ede223e Include format 43 in best quality list (fixes issue )
Ricardo Garcia 2b06c33d19 Improve some metavar names
Ricardo Garcia ca6a11fa59 Forbid forward slash in win32 file names (fixes issue )
Ricardo Garcia de3ed1f84a Bump version number
Ricardo Garcia 0b59bf4a5e Add webm extension to formats 43 and 45 (fixes issue )
Ricardo Garcia 896a6ea9e2 Fix for all-formats exception by Valentin Hilbig
Ricardo Garcia 7031008c98 Add a number of retries with tweaked patch, originally from Neil Channen
Ricardo Garcia e616ec0ca6 Add player signature verification to rtmpdump support (fixes issue )
Ricardo Garcia 2a7353b87a Make -a understand dash means stdin
Ricardo Garcia 787f2a5d95 Also try no "el" option in get_video_info (fixes issue )
Ricardo Garcia 42e3546fb5 Increment number of downloads when the file has already been fully downloaded
Ricardo Garcia 0228ee9788 Print EOL before "unable to write data" error
Ricardo Garcia 131efd1ae0 Detect errors in video data writes
Ricardo Garcia 2bebb386b8 Make "all-formats" and "best-quality" download the version without specific format too
Ricardo Garcia 7e58d56888 Merge changes by obeythepenguin
Ricardo Garcia 554bbdc48c Bump version number
Ricardo Garcia 37dfa1e0df Also try el=vevo on YouTube if everything else fails (fixes issue )
Ricardo Garcia 4dd63be193 Bump version number
Ricardo Garcia 7d8d06122d Add the "ord" template parameter (fixes issue )
Ricardo Garcia 9177ce4d8c Support new playlist style URL (fixes issue )
Ricardo Garcia ce5cafea40 Change method to detect end of playlist (fixes issue )
Ricardo Garcia ae3fc475eb Bump version number
Ricardo Garcia d063db3810 Try el=detailpage if el=embedded fails for YouTube
Ricardo Garcia 6194531831 Add Yahoo! Video InfoExtractor, merged from "obeythepenguin"
Ricardo Garcia 2ed1ddd0a0 Request video info webpage using "embedded" instead of "detailpage"
In the request for get_video_info, use el=embedded instead of el=detailpage, as
if the request was coming from an embedded video player instead of the video
webpage. This created problems for some videos, with YouTube replying with
"Invalid parameters". This fixes issue  and fixes issue .
Ricardo Garcia eaf4a7288d Solve minor aesthetical problem in rtmpdump error messages
Ricardo Garcia 6ba562b0e4 Added --all-format option from tweaked patch (fixes issue )
Ricardo Garcia 131bc7651a Make the "-" output file name equivalent to /dev/stdout (fixes issue )
Ricardo Garcia 5caacaddc6 Bump version number
Ricardo Garcia 79f193e5d8 Do not use the final URL for -g
Ricardo Garcia 44e16fa17f Bump version number
Ricardo Garcia d983524781 Add --no-progress option (fixes issue )
Ricardo Garcia 1392f3f52c Give preference to format 34 before format 5 in quality list
Ricardo Garcia 43ab0ca432 Do not error out on problems printing the file name
Ricardo Garcia 31cbdaafd4 Properly support simple titles in the newest InfoExtractors
Ricardo Garcia bd3cdf6dc4 Do not pass URLs around in Unicode form (fixes issue )
Ricardo Garcia 8cc468de75 Bump version number
Ricardo Garcia 31bcb48001 Tweak final filename in the open attempt, to be platform and filename-agnostic
Ricardo Garcia c201ebc915 Fix SyntaxError triggered by mistake in user-agent commit
Ricardo Garcia ce9c6a3097 Fix problem with sanitize_title not replacing Windows directory separator
Ricardo Garcia 4cfeb46544 Update user-agent string
Ricardo Garcia 490fd7aea7 Cherry-pick obeythepenguin's changes and merge them into main branch
Ricardo Garcia c05fc6a345 Support simplest new URLs in YouTube
Ricardo Garcia 91bce611c7 Bump version number
Ricardo Garcia 1c1821f8eb Improve rtmpdump support
Ricardo Garcia 60f8049d05 Only verify the URL when it's an HTTP download
obeythepenguin@gmail.com 49c0028a7a patched to add Google Video and Photobucket support
Ricardo Garcia f1b4bee09d Bump version number
Ricardo Garcia a04e80a481 Add flexibility importing the "parse_qs" function (fixes issue )
Ricardo Garcia fe788f2c6f Bump version number
Ricardo Garcia 75a4cf3c97 Fix minor problems with Youtube user InfoExtractor
Ricardo Garcia 0487b407a1 Add support for using rtmpdump
Ricardo Garcia a692ca7c49 Bump version number
Ricardo Garcia 9c457d2a20 Handle file open mode correctly (fixes issue )
Archanamiya c39c05cdd7 Added support to download all of a user's videos!
Ricardo Garcia 29f0756805 Fix detection of uploader nickname in metacafe (fixes issue )
Ricardo Garcia d9bc015b3c Take format 37 into account (fixes issue )
Ricardo Garcia 4bec29ef4b Add self-updating code
Ricardo Garcia ab1f697827 Use unquote_plus to decode video title
Ricardo Garcia 583c714fde Allow empty titles because they do appear in some videos (fixes issue )
Ricardo Garcia 850ab76560 Use default values for "continuedl" and "nooverwrites" downloader parameters
Ricardo Garcia f5a5bec351 Avoid using Unicode strings when forming URL requests (fixes issue )
Ricardo Garcia f94b636c3e Improve preferred encoding detection method
Ricardo Garcia 0833f1eb83 Restore INTERNAL version number
Ricardo Garcia ad0525b3e6 Bump version number
Ricardo Garcia 30edbf89e4 Report final URL with -g and do not print URLs normally (fixes issue )
Ricardo Garcia eae2666cb4 Handle weird OSX locale settings gracefully (fixes issue )
Ricardo Garcia 2a04438c7c Restore INTERNAL version number
Ricardo Garcia dd24ff44ab Bump version number
Ricardo Garcia 304a4d85ea Modify _MORE_PAGES_INDICATOR for searches (fixes issue )
Ricardo Garcia d899774377 Accept my_playlists syntax for playlists
Ricardo Garcia fade05990c Do not specify any format as a last option for the -b flag
Ricardo Garcia e5b1604882 Set INTERNAL version number
Ricardo Garcia 0c8beb43f2 Bump version number
Ricardo Garcia 71b7300e63 Use get_video_info to work around captcha problems (fixes issue )
Ricardo Garcia 8497c36d5a Fix minor problem with size formatting method
Ricardo Garcia 110cd3462e Update User-agent string
Ricardo Garcia 18963a36b0 Fix metacafe.com code due to recent changes in the site
Ricardo Garcia df1ceb1fd9 Include format 5 in best quality list
Ricardo Garcia 7eb0e89742 Properly encode messages sent to stderr (fixes issue )
Ricardo Garcia 8b07dec5f6 Bump version number
Ricardo Garcia 113e5266cc Modify "more pages" check in YouTube playlist (fixes issue )
Ricardo Garcia 55e7c75e12 Delay opening file until there is data to write
Fixes issue .
Ricardo Garcia ff21a710ae Restore INTERNAL version number
Ricardo Garcia 7374795552 Bump version number
Ricardo Garcia 0cd61126fc Document new "continuedl" FileDownloader option
Ricardo Garcia e1f18b8a84 Remove integer casts and replace them with long integer casts
Ricardo Garcia 6a0015a7e0 Fix missing cast preventing detection of already downloaded file
Ricardo Garcia 7db85b2c70 Tweaks to ivanov's code
Paul Ivanov f76c2df64e Added -c option (--continue)
interrupted downloads will properly resume and append to the previously downloaded data, instead of overwriting the file.

There's some error checking - if the length of the file to be download matches the length of the previously downloaded data, we report that this file has already been downloaded and do nothing.

If there is some other HTTP 416 'Requested range not satisfiable' error, we simply re-download the whole file (reverting to the original functionality)

All other HTTP errors are simply raised.

Resuming does not override -w (--nooverwrite), since it is not clear what should happen if file on disk is larger than file to be downloaded.

Thus, -c does nothing if -w is present.
Ricardo Garcia daa88ccc2e Fix TypeError when using the -f option (fixes issue )
Ricardo Garcia eb5d184157 Restore INTERNAL version number
Ricardo Garcia 5745bfdcdc Bump version number
Ricardo Garcia 320becd692 Remove trails from the "append_const" change (fixes issue )
Ricardo Garcia 968aa88438 Only catch UnavailableFormatError in call to process_info
Ricardo Garcia cbfff4db63 Verify URLs in simulate mode (fixes issue )
Ricardo Garcia 781daeabdb Restore "INTERNAL" version number
Ricardo Garcia 1d50e3d153 Bump version number
Ricardo Garcia d69a1c9189 Handle "content too short" errors properly
Ricardo Garcia 488f619471 Close video file before removing it.
Ricardo Garcia cab60d710a Put back INTERNAL version
Ricardo Garcia 152edc0d4c Set version number
Ricardo Garcia b74c859d0f Use store_const instead of append_const as the latter requires Python 2.5
Ricardo Garcia 0e54320009 Restore INTERNAL version number
Ricardo Garcia 43f35682e9 Put version number in place
Ricardo Garcia ad274509aa Add an "epoch" keyword to the output template
Ricardo Garcia d09744d055 Add format 35 (flv) as second best in quality
Ricardo Garcia 1c76e23e0f Move the -t and -l options to the filesystem group
dannycolligan 42bcd27d3b Some consistency changes and ghost-file bugfix after discussion with rg3
dannycolligan 2740c509b3 Fixed ambiguity of multiple video option specifiers by dissalowing it; changed some sys.ext calls to parser.error
dannycolligan 7b7759f5a4 Added -b option and created option groups for help prompt
Ricardo Garcia 8d2c83eda5 Update and correct (format,extension) table for YouTube
Ricardo Garcia 2f11508ada Minor documentation change
Ricardo Garcia b65740e474 Skip blank lines in batch file -- fixes issue
Ricardo Garcia a825f0ca83 Revert version number to INTERNAL
Ricardo Garcia 27c3383e2d Set version number
Ricardo Garcia dbccb6cd84 Fix code for metacafe.com (this fixes issue )
Ricardo Garcia 98164eb3b9 Fix some minor unicode-related problems
Ricardo Garcia 2851b2ca18 Update internal documentation to reflect the new behaviour
Ricardo Garcia 6f21f68629 Download videos after extracting information
This is achieved by letting the InfoExtractors instruct its downloader to
process the information dictionary just after extracting the information. As a
consequence, some code is simplified too.
Ricardo Garcia 147753eb33 Replase self._downloader.to_stderr() with self._downloader.trouble()
Ricardo Garcia 3aaf887e98 Put the downloader in full control of output messages
Ricardo Garcia 9bf386d74b Move the downloader return code to a class member
This makes it possible to initialize it with value zero and later let the
trouble() overwrite the value. It simplifies error treatment and paves the way
for the InfoExtracto objects to call process_info() themselves, which should
solve the issues with tor and some other problems.
Ricardo Garcia 2f4d18a9f7 Use getpreferredencoding() instead of getdefaultlocale()
This fixes issue  and is recommended after a bug report I made to the
Python team:

http://bugs.python.org/issue5815
Ricardo Garcia b0eddb2eb4 Update User-Agent string
Ricardo Garcia 9cee6d9035 Minor adjustments to closely match what a web browser does
Ricardo Garcia c8619e0163 Move the code to process an InfoExtractor result to its own method
dannycolligan 257453b92b Added cap if user requests ytsearch number over 1000 (with warning)
dannyc@omega fd9288c315 Changed ytsearchall to retrieve max 1000 results
Ricardo Garcia 1db4ff6054 Restore internal version number indicator
Ricardo Garcia 763826cf2c Establish version number
Ricardo Garcia af6a92f4c9 Fix issue
Ricardo Garcia f995f7127c Remove some extra whitespace
Ricardo Garcia e54930cf71 Switch to "INTERNAL" version again
Ricardo Garcia c6b311c524 Set version number for release
Ricardo Garcia 79e75f66c8 Remove --best-quality option and add proper support for high definition format
Ricardo Garcia d0a9affb46 Replace setter and getter with simple attribute access
Ricardo Garcia 76800042fd Replace version number while in progress
Ricardo Garcia 7ab2043c9c Bump version number
Ricardo Garcia cc10940385 Fix very wrong code for setting the language
It turned out that, despite the program working without apparent errors,
the code for setting the language was completely wrong. First, it didn't
run unless some form of authentication was performed. Second, I
misstyped _LANG_URL as _LOGIN_URL, so the language was not being set at
all! Amazing it still worked.
Ricardo Garcia 5121ef2071 Fix wrong indentation
Ricardo Garcia fd20984889 Bump version number
Ricardo Garcia 0beeff4b3e Add que -w or --no-overwrites option
Ricardo Garcia 64a6f26c5d Put Danny Colligan as an author in the script itself
Ricardo Garcia a9633f1457 Use quote_plus instead of manually replacing spaces by plus signs
Ricardo Garcia 25af2bce3a Include Danny Colligan's YouTube search InfoExtractor
Ricardo Garcia d1580ed990 Fix NameError
Ricardo Garcia ba72f8a5d1 Bump version and increase Firefox version number
Ricardo Garcia c6fd0bb806 Add -a (--batch-file) option
Ricardo Garcia 72ac78b8b0 Fix for YouTube internationalization changes
Ricardo Garcia 240b737ebd Bump version number
Ricardo Garcia 27d98b6e25 Fix TypeError in decode() method and unordered playlist URLs
Ricardo Garcia 9ca4851a00 Bump version number
Ricardo Garcia 1e9daf2a48 Make the YouTube login mechanism work across countries
Ricardo Garcia d853063955 Bump version number
Ricardo Garcia 2546e7679f Fix metacafe.com and UTF8 output filenames
Ricardo Garcia 0ddf38df18 Bump version string
Ricardo Garcia 65cd34c5d7 Add initial version of postprocessing framework
Ricardo Garcia 5352678576 Improve a couple of detection strings to avoid i18n-related bugs
Ricardo Garcia a7d06f400c Increase version number
Ricardo Garcia b1a1f8ea8f Improve error message regarding output templates and charsets
Ricardo Garcia 97accc0ece Simplify a statement
Ricardo Garcia 76a7f36400 Make the most prominent output strings Unicode and fix Unicode title bug
Ricardo Garcia 0c2dc87d9e Add YoutubePlaylistIE class
Ricardo Garcia 020f7150aa Add metacafe.com support and minor changse
Ricardo Garcia 3af1e17284 Fix directory creation not working with absolute paths
Ricardo Garcia acd3d84298 Add --rate-limit program option
Ricardo Garcia d7bc253bb8 Fix video format command line option parsing and set version number
Ricardo Garcia bafa5cd969 Convert direct uses of .to_stdout() into methods to ease inheritation
Ricardo Garcia 90663284b2 Add --mobile-version program option
Ricardo Garcia 2130d8f6a4 Make the downloader print the name of the destination file
Ricardo Garcia e5bf0f551b Add a couple of exceptions to avoid exiting from class methods
Ricardo Garcia 38acff0e77 Minor comment
Ricardo Garcia 1c5e23021e Improve program documentation
Ricardo Garcia 0086d1ec32 Add .trouble() method to downloader to ease tracing retcode
Ricardo Garcia bb681b88df Unify uppercase criteria in errors and trace return code
Ricardo Garcia 98a1fe038c Replace the directory separator in title
Ricardo Garcia e8e20c76f2 Fix not taking into account outs.outtmpl
Ricardo Garcia ae2e6e461c Remove useless comments
Ricardo Garcia 209e9e27e7 Add command line parse code
Ricardo Garcia f9f1e79879 Minor improvements and changes
Ricardo Garcia 05a84b35cc Add forceurl and forcetitle downloader options
Ricardo Garcia 7414bdf11d Update and fix User-Agent header
Ricardo Garcia f97c8db74e Improve some unicode regular expressions
Ricardo Garcia 22899cea59 Improve fixed template checks
Ricardo Garcia 14c300687e Detect malformed output template
Ricardo Garcia 7e5cab6730 Add .to_stderr() to downloaders
Ricardo Garcia b609fd549f Add support for the "simulate" option
Ricardo Garcia 9fcd8355e5 Correct a few formatting bugs and add .to_stdout() to downloader
Ricardo Garcia b46347267a Check the output name is not fixed when there are several videos to download
Ricardo Garcia 4fa74b5252 Create initial preview version of the new youtube-dl