Commit Graph

566 Commits (4ae720042c3959cae856ce93578a0ba4b5817870)

Author SHA1 Message Date
Philipp Hagemeister bdb3f7a769 Simplify suitable
Philipp Hagemeister afb5b55de6 Proper warning if xml.etree.ElementTree is not available
Philipp Hagemeister e5b9fac281 Bump version number
Anand Babu Periasamy 20e91e8375 Add --match-title and --reject-title (Closes )
Philipp Hagemeister f9c6878714 Support for The Escapist
Philipp Hagemeister 8c5dc3ad40 Simplify IE index
Philipp Hagemeister a2f7e3a5bb Clarify usage
Philipp Hagemeister b487ef0833 Fully implement comedycentral downloader
Philipp Hagemeister b90bcbe79e Bump version number
Philipp Hagemeister 8236e85178 s#phihag#rg3
Philipp Hagemeister 50bdd8a9e7 Merge remote-tracking branch 'knagano/master'
Philipp Hagemeister 34554a7ad4 Merge remote-tracking branch 'CaptainPatate/master'
Philipp Hagemeister 93e1659586 Bump version number (remove -phihag)
Philipp Hagemeister f166bccc8f Allow downloading current thedailyshow episode with youtube-dl :tds
Philipp Hagemeister d793aebaed comedycentral: 1 seems to be the constant correct offset
Philipp Hagemeister 5991ddfd7a comedycentral: Use media number instead of act number as ID
Philipp Hagemeister a88bc6bbd3 Temporarily fix dailyshow+colbertnation media IDs
Philipp Hagemeister 46c8c43266 Switch around act and episode title (makes -t nicer)
Philipp Hagemeister fedf9f3902 Basic comedycentral (The Daily Show) support (Will work as soon as rtmpdump gets fixed)
Philipp Hagemeister 0f862ea18c comedycentral: include player URL (still broken)
Philipp Hagemeister c8e30044b8 Rudimentary support for comedycentral (rtmpdump currently broken)
Philipp Hagemeister cec3a53cbd Do not try to re-encode unicode filenames (Closes )
Philipp Hagemeister 6fc5b0bb17 Credit Sören Schulze for myvideo support
Philipp Hagemeister 9b0a8bc198 myvideo.de support
Philipp Hagemeister e5e74ffb97 Fix os.makedirs in Windows
Philipp Hagemeister eb99a7ee5f Bump version to 2011.09.06
Philipp Hagemeister 50891fece7 Use os.makedirs instead of homebrewn pmkdir
Philipp Hagemeister ef53099e35 merged pep8_whitespace
FND c0a10ca8dc fixed PEP8 whitespace issues
mostly vertical whitespace and mixed spaces and tabs
Philipp Hagemeister dbddab2799 Robust error handling in downloading code
Philipp Hagemeister 802622ac1c Merge remote-tracking branch 'wise86/master'
Philipp Hagemeister e0e56865a0 Remove stable from help wording (There will be only one main branch for now)
Philipp Hagemeister eb11aaccbb Update bug reporting to this fork, so that vimeo/blip.tv issues are reported at phihag/issues instead of rg3/issues (Closes )
Philipp Hagemeister d207e7cf88 Update update mechanism (Closes )
Philipp Hagemeister 36cf7bccde Merge remote-tracking branch 'rbrito/prefer-webm'
Philipp Hagemeister 6ae796b1ee Credit Rogério Brito for Vimeo support
Philipp Hagemeister 9c3e23fb64 Merge Vimeo support
Philipp Hagemeister 5f9f2b7396 Update: Write downloaded file without modification (allows hashsums)
Philipp Hagemeister eb0387a848 Fix stty detection
Philipp Hagemeister 4f2a5e06da Use subprocess to call stty size when COLUMNS is not set
Philipp Hagemeister 2c8d32de33 merge gvalkov/optparse-refactor (minus stty)
Philipp Hagemeister 2b70537d7b merge upstream
Georgi Valkov 6a4f0a114d Use `stty size` to find terminal width if we're on linux and COLUMNS is not exported
Georgi Valkov 5adcaa4385 Refactor main function
Georgi Valkov 51c8e53ffe Set help formatter width to terminal width (prevents wrapping)
Georgi Valkov 4f9f96f646 Option parsing refactoring ; Moved version string to __version__
Brings terser option formatting to youtube-dl:
  from: -u USERNAME, --username USERNAME
  to:   -u, --username USERNAME
Georgi Valkov 5fb3df4aff Move update_self out of __main__ for clarity
Georgi Valkov 7a9054ec79 Fix small indentation inconsistencies
Georgi Valkov 2770590d5a Use module metadata variables instead of comments
Georgi Valkov e9cb9c2811 Add vim modeline
Philipp Hagemeister 1cab2c6dcf Fix blip.tv regular expression to not match blipXtv
Philipp Hagemeister 86e709d3de Fix youtu.be links (Closes )
Philipp Hagemeister 8519c32d25 Use parse_qs instead of homebrewn parsing
Philipp Hagemeister f3dc18d874 youtube: Better error messages
Philipp Hagemeister 1293ce58ac Fix Python 2.4 compatibility
Philipp Hagemeister 0a3c8b6291 Use alternative imports for Python 2.4 (Closes )
Philipp Hagemeister 134cff47ab Remove debugging information
Philipp Hagemeister f137bef973 Fix RTMP streams and ignore url-less entries
Rogério Brito 2fb47e073a Merge https://github.com/rg3/youtube-dl into vimeo
Rogério Brito 05b4029662 Merge https://github.com/rg3/youtube-dl into prefer-webm
Ricardo Garcia 33d507f1fe Bump version number
Ricardo Garcia c44b9ee95e Update User-Agent string
Ricardo Garcia 8126094cf1 Fix YouTube downloads (code by Philipp Hagemeister)
Philipp Hagemeister 0ac22e4f5a Fix youtube downloads (Closes )
Philipp Hagemeister c31b124d7a Suppport for youtube video streams (Mentioned in )
Philipp Hagemeister 47b8dab29e Removed inaccurate warning
Philipp Hagemeister 91e6a3855b Be lenient about download URLs (Closes )
Philipp Hagemeister 5623100e43 remove debugging code
Philipp Hagemeister 6eb08fbf8b + --write-info-json
Philipp Hagemeister 437d76c19a blip.tv support for python 2.5 with trivialjson
Giovanni Visentini 2152ee8601 Update youtube playlist for use playlist?list=id format
Philipp Hagemeister a1cab7cead call increment_downloads in blip.tv extractor
Philipp Hagemeister 8b95c38707 --writedescription option
Philipp Hagemeister c6b55a8d48 Full youtube video descriptions, including special characters (2.6+, with fallback for older Pythons)
Philipp Hagemeister aded78d9e2 Support for blip.tv/file URLs
Philipp Hagemeister 7745f5d881 Basic blip.tv support
rmanola 18b7f87409 Added option to allow different audio encoding qualities and to allow specify whether erase or not the video when it's need to extract the audio.
knagano 62a29bbf7b Fixed download from Dailymotion.
Fetches FLV URL from "sdURL" in addVariable("sequence") JSON,
instead of addVariable("video") which doesnot exist today.
Supports new title, uploader nickname format.
Rogério Brito 2fc31a4872 vimeo: Apparently, all videos in vimeo are served in ISO containers.
Rogério Brito 44c636df89 vimeo: Tweak the regexp to allow some extended URLs from vimeo.
This, in particular, lets me grab the videos from the beginners channel with
URLs like:

    http://vimeo.com/groups/fivebyfive/videos/22648611

Note that the regexp *will* break for other URLs that we don't know about
and that's on purpose: we don't want to accidentally grab videos that would
be passed on to other information extractors.
Rogério Brito 1e055db69c vimeo: Ignore if we are using HTTP/S or not.
Rogério Brito 0ecedbdb03 vimeo: Remove clutter in some messages.
We should make a unified way of printing messages, but let's follow suit and
do what the main YoutubeIE does here.
Rogério Brito 43c0a396a2 Merge branch 'master' into prefer-webm
Rogério Brito 00f3977f77 Merge branch 'master' into vimeo
Amaury Gauthier e26005adea Deletes duplicate entry in process_info dictionary of YahooIE
Ricardo Garcia 4b0d9eed45 Bump version number
Ricardo Garcia 3efa45c3a2 Fix upload date regexp (closes )
Ricardo Garcia 2727dbf78d Split a couple of lines to make the code more readable
Ricardo Garcia e3f7e05c27 Avoid crash reported in issue
Ricardo Garcia da54ed4412 Support youtube.com/e/ URLs (closes )
Rogério Brito d8edbf3a93 Merge branch 'master' into vimeo
Rogério Brito a62db07f58 Merge branch 'master' into prefer-webm
Ricardo Garcia b58faab5e7 Bump version number
Rogério Brito 854cad639e Merge branch 'master' into prefer-webm
Rogério Brito cb25a0e30c Merge branch 'master' into vimeo
Idan Kamara 377086af3d Use '--' to separate the file argument from the options when calling ffmpeg
This is to avoid a potential issue if the file name begins with a hyphen since ffmpeg will interpret it as an option
Ricardo Garcia 820eedcb50 Bump version number
Ricardo Garcia da273188f3 Catch possible exceptions when running ffprobe
Idan Kamara 1bd9258272 Fix stderr print when ffmpeg fails
Ricardo Garcia c076845454 Bump version number
Ricardo Garcia afd233c05c Update User-Agent string
Ricardo Garcia 3072fab115 Add an audio extracting PostProcessor using ffmpeg (closes )
Ricardo Garcia 87cbd21323 Fix date parsing for YouTube (patch by Drake Wyrm)
Rogério Brito 2c8bedd12c Merge branch 'master' into prefer-webm
Rogério Brito 1a3fe4212f Merge branch 'vimeo' of ssh://github.com/rbrito/youtube-dl into vimeo
Rogério Brito c4cfbdf5a5 Merge branch 'master' into vimeo
Ricardo Garcia ef9f8451c8 Add Gergely Imreh to the author list
Gergely Imreh 9f5f960213 Facebook info extractor
This IE should be full-featured.

Public videos can be downloaded without login, e.g:
https://www.facebook.com/video/video.php?v=696729990595

Private videos need login, and subject to login rate limit of
a couple of tries / minute.
Rogério Brito 7f69fd3b39 Merge branch 'master' into vimeo
Rogério Brito a7e5259c33 vimeo: Make regexp more robust.
This change makes the VimeoIE work with http://player.vimeo.com/video/19267888
Gergely Imreh 7cc3c6fd62 Fix possible missing parameter in playlist url extraction
The "playlist_prefix" parameter was missing when parsing playlist urls
that match the recently added format, e.g.:
http://www.youtube.com/user/stanforduniversity#g/c/9D558D49CA734A02
For these URLs (basically, for every playlist type so far, except the
artist list) playlist_prefix has to be equal to "p" for correct
exctraction.
Ricardo Garcia d119b54df6 Support more common YouTube playlist URLs
Rogério Brito 8cc98b2358 vimeo: Also accept URLs prefixed by www.
I hope that this doesn't break anything. `:)`
Rogério Brito f24c674b04 Make some of the comments more descriptive.
Rogério Brito 58b53721af Merge branch 'master' into vimeo
Gergely Imreh f74e22ae28 Enable artist playlists in YoutubePlaylistIE
Artist playlist pages have different format compared to user playlists,
thus more format checking is needed to construct the correct URL.

From the artist playlist this method downloads all listed below the
"Videos by [Artist Name]" header, plus usually there's one more
video on the side, titled "Youtube Mix for [Artist Name]", which
has a link format that currently cannot be distinguished from the other
videos in the list.
Ricardo Garcia 16c73c2e51 Fix SyntaxError problem (oops)
Ricardo Garcia 5776c3295b Update User-Agent string
Ricardo Garcia 9e0dd8692e Bump version number
Ricardo Garcia 5aba6ea4fe Add YoutubeUserIE (code courtesy of Paweł Paprota)
Rogério Brito c5a088d341 Use non-greedy regexps, for safety.
Since I was very lazy when I coded this, I took the fastest route.  Luckily,
Vasyl' Vavrychuk pointed this out and I went (after many months) and just
did some minor changes.
Rogério Brito 92743d423a Preliminary downloading from vimeo
Rogério Brito 9e1ee3364a Merge branch 'master' into prefer-webm
Rogério Brito e0edf1e041 Give preference to WebM formats.
This patch gives preference to formats that are Free.
Ricardo Garcia 6025795d95 Split some long lines
Ricardo Garcia e30189021d Make the file timestamp feature optional
Gergely Imreh 09bd408c28 Set downloaded file's time stamp from last-modified header
This file stamp setting is very relaxed. If there's any problem
along the way (no last-modified header, bad time string format,
no time set privileges,...) or if nothing is downloaded (e.g. using
resumed download but the file was already complete) then nothing
is done.
Gergely Imreh 9f7963468b New option --get-filename to print output filename
When using youtube-dl within scripts, it is very useful to know
what will be the final output filename with all the title settings and
filename templates applied. Add option to the quiet mode operations
to print that info.

For this I had to move the filename-generation into its own function.
As much as I can tell it should work almost always well, ie. not to
break things if one not actually interested in the title, like in
case of other forced printing. That is, unless there's an invalid
system charset or the user specified a wrong output template. In that
case probably could be assumed that the user does have a problem
(the former) or did want to mess with the filename (the latter).

Signed-off-by: Gergely Imreh <imrehg@gmail.com>
Lionel Elie Mamane b940c84a24 Support for youtube.com/embed/XXXXX URLs (closes )
Ricardo Garcia 0f7099a59b Fix omission of Witold Baryluk as the Dailymotion InfoExtractor author
Ricardo Garcia c02d8e4040 Fix dailymotion support (closes )
Ricardo Garcia 0f6b00b587 Improve addinfourl_wrapper for compatibility with older Python versions
Ricardo Garcia 7b531c0be6 Wrap call to addinfourl for compatibility with Python 2.4
Ricardo Garcia 0d14e225fa Omit code argument in addinfourl for Python 2.4
Ricardo Garcia 0fe64c04f8 Make the self-updating function a bit more robust
Ricardo Garcia 0d8d9877ad Add support for embedded YouTube playist URLs (closes )
Ricardo Garcia 8cc42e7c1a Fix "unable to rename file" Windows error (closes )
Ricardo Garcia 1987c2325a Add proper support for "gzip" and "deflate" encodings
Ricardo Garcia aac3fe0f4a Fix bug in regular expression for youtu.be links
Ricardo Garcia 3fb2c487c0 Add --no-part option (closes )
Ricardo Garcia d3975459d1 Remove trailing whitespace
Mantas Mikulėnas ccbd296bee Added --console-title to display download progress in console window title.
This uses SetConsoleTitle() Win32 API for Windows Console, and Xterm escape sequence otherwise.
Ricardo Garcia e7cf18cb6b Add --dump-user-agent option (patch provided by Benjamin Johnson)
Ricardo Garcia 09cc744c90 Print new line before a few error messages
Ricardo Garcia a57ed21f6d Request page compression by default, like Firefox does
Ricardo Garcia 975a91d0ac Take into account resume_len when calculating speed and ETA
Ricardo Garcia b905e5f583 Fix erroneous "content too short" error message
Ricardo Garcia ef4f4544a2 Remove deprecated -b option and nonworking -m option (closes )
Ricardo Garcia 5c1327931a Stop attempting to use get_video and detect missing formats ourselves
Ricardo Garcia 106d091e80 Do not use 0% as the starting point in resumed downloads (closes )
Ricardo Garcia f83ae7816b Fix problem when requesting an existing format explicitly with -f
Ricardo Garcia f148ea4473 Bump version number
Ricardo Garcia 7d950ca1d6 Improve temporary filename handling of special cases
Ricardo Garcia d157d2597a Fix YoutubeIE after recent YouTube changes (closes )
Ricardo Garcia e567ef93d8 Add Vasyl' Vavrychuk to the list of authors
Vasyl' Vavrychuk 27179cfdba Implemented depositfiles.com support
Vasyl' Vavrychuk 6f0ff3bab9 Fixed failure of os.rename after receiving file finished due to file not being closed.
Following error happen while at the end of _do_download called try_rename
WindowsError: [Error 32] The process cannot access the file because it is being used by another process
Vasyl' Vavrychuk a9806fd83d report_extraction was never called for GenericIE
Ricardo Garcia 62cf7aaf9a Use a temporary filename to download files
Nevar Angelo a1f03c7b06 Reworked 'upload_date' code for output sequence in YoutubeIE.
Reverted to previous version of 'upload_date' and fixed
a mistake that prevented the code from working properly.
Ricardo Garcia f8dc441430 Bump version number
Ricardo Garcia 010ebaf783 Update User-Agent string
Ricardo Garcia 138b11f36e Rework upload date mechanism after detecting problems in several tests
Ricardo Garcia 05df0c1d4a Restore file permissions
Ricardo Garcia b04bb07c94 Merge branch 'master' of https://github.com/psi-neamf/youtube-dl into psi-neamf
jamiejones b620a5f811 Correctly parse the player URL in RTMP downloads (closes )
Fixed several problems courtesy of jamiejones:

The parsing for the SWF url was wrong (the "//" are now escaped and the
initial .*match needs to be 'ungreedy'), so the -W setting to rtmpdump
was not set, causing the decryption of the video to be wrong.

Finally, add "&amp;has_verified=1" to the fetch of the HMTL page to
allow fetching of age-restricted videos.
Nevar Angelo b3a27b5217 Added 'uploaddate' output sequence for YoutubeIE.
Ricardo Garcia 5e596cac0a Minor help text correction
Nevar Angelo 1e47d226e1 Added command line switch -A --auto-number
Numbering downloaded URLs was implemented with %(ord)s in the
output template. It has been replaced with the %(autonumber)s
sequence and is now also available as a command line switch.
Nevar Angelo 817e8f523f Allow comments in batch file.
Ricardo Garcia 8cc4434116 Add playlist-end option (courtesy of Nevar Angelo)
Ricardo Garcia 893a13df55 Modify autoupdate URLs to match the ones from github.com
Ricardo Garcia c34e358456 Bump version number
Ricardo Garcia a6a61601de Update User-Agent string
Ricardo Garcia e0c982c8d0 Load cookies if the cookie file exists when starting the program
Ricardo Garcia 331ce0a05d Use stderr for output when the output file is "-" (fixes issue )
Ricardo Garcia 80066952bc Add new --cookies option to be able to save cookies to disk (fixes issue )
Ricardo Garcia e08878f498 Set stdout to binary mode under Windows (fixes issue )
Ricardo Garcia a949a3ae6b Support "https" in YouTube video URLs (fixes issue )
Ricardo Garcia 7df4635faf Use HTTPS for the login URL (fixes issue )
Ricardo Garcia f79007e542 Bump version number
Ricardo Garcia ac249f421f Retry on any 5xx server error
Ricardo Garcia e86e9474bf Treat HTTP error 500 the same way as 503 (fixes issue )
Ricardo Garcia bbd4bb037a Support the -nocookie suffix in youtube domain name (fixes issue )
Ricardo Garcia 5c44af1875 Do not print file name on warning message (fixes issue )
Ricardo Garcia 33407be7d6 Fix "unable to extract uploader nickname" error with Dailymotion
Ricardo Garcia 8e686771af Decode the reason given on YouTube errors to avoid crashes (fixes issue )
Ricardo Garcia 2933532c5b Allow the #! notation for YouTube URLs found in many links in their website
Ricardo Garcia 6b57e8c5ac Extract the video extension from the media URL in metacafe.com
Ricardo Garcia c6c555cf8a Fix metacafe.com downloads for some videos (fixes issue )
Ricardo Garcia db7e31b853 Use unicode strings for several error messages that were missing the "u"
Ricardo Garcia d67e097462 Abort download in case of error writing file data to disk
Ricardo Garcia 38ed13444a Improve error message on invalid output template and abort execution
Ricardo Garcia 8a9f53bebf Fix typo in report_resuming_byte doc string (fixes issue )
Ricardo Garcia 80cc23304f Bump version number
Ricardo Garcia 813962f85a Update user-agent string
Ricardo Garcia 109626fcc0 Fix metacafe.com code not working due to gdaKey again (fixes issue )
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 )