]>
Commit | Line | Data |
---|---|---|
cfcec693 | 1 | % youtube-dl(1) |
6bcd846b | 2 | |
cfcec693 FV |
3 | # NAME |
4 | youtube-dl | |
6bcd846b | 5 | |
cfcec693 FV |
6 | # SYNOPSIS |
7 | **youtube-dl** [OPTIONS] URL [URL...] | |
8 | ||
9 | # DESCRIPTION | |
6bcd846b DB |
10 | **youtube-dl** is a small command-line program to download videos from |
11 | YouTube.com and a few more sites. It requires the Python interpreter, version | |
921a1455 | 12 | 2.x (x being at least 6), and it is not platform specific. It should work in |
6bcd846b DB |
13 | your Unix box, in Windows or in Mac OS X. It is released to the public domain, |
14 | which means you can modify it, redistribute it or use it however you like. | |
15 | ||
cfcec693 | 16 | # OPTIONS |
4618f3da | 17 | -h, --help print this help text and exit |
c4105fa0 | 18 | --version print program version and exit |
8f88eb1f | 19 | -U, --update update this program to latest version |
4618f3da PH |
20 | -i, --ignore-errors continue on download errors |
21 | -r, --rate-limit LIMIT download rate limit (e.g. 50k or 44.6m) | |
22 | -R, --retries RETRIES number of retries (default is 10) | |
08c1d0d3 | 23 | --dump-user-agent display the current browser identification |
20326b8b | 24 | --user-agent UA specify a custom user agent |
6a1ca41e PH |
25 | --list-extractors List all supported extractors and the URLs they |
26 | would handle | |
08c1d0d3 | 27 | |
cfcec693 | 28 | ## Video Selection: |
4618f3da PH |
29 | --playlist-start NUMBER playlist video to start at (default is 1) |
30 | --playlist-end NUMBER playlist video to end at (default is last) | |
08c1d0d3 PH |
31 | --match-title REGEX download only matching titles (regex or caseless |
32 | sub-string) | |
33 | --reject-title REGEX skip download for matching titles (regex or | |
34 | caseless sub-string) | |
b88a5250 | 35 | --max-downloads NUMBER Abort after downloading NUMBER files |
6bcd846b | 36 | |
cfcec693 | 37 | ## Filesystem Options: |
4618f3da PH |
38 | -t, --title use title in file name |
39 | -l, --literal use literal title in file name | |
40 | -A, --auto-number number downloaded files starting from 00000 | |
9baa2ef5 PH |
41 | -o, --output TEMPLATE output filename template. Use %(stitle)s to get the |
42 | title, %(uploader)s for the uploader name, | |
43 | %(autonumber)s to get an automatically incremented | |
31a2ec2d | 44 | number, %(ext)s for the filename extension, |
551fa9df FV |
45 | %(upload_date)s for the upload date (YYYYMMDD), |
46 | %(provider)s for the provider (youtube, metacafe, | |
47 | etc), %(id)s for the video id and %% for a literal | |
48 | percent. Use - to output to stdout. | |
4618f3da PH |
49 | -a, --batch-file FILE file containing URLs to download ('-' for stdin) |
50 | -w, --no-overwrites do not overwrite files | |
51 | -c, --continue resume partially downloaded files | |
eca1b76f PH |
52 | --no-continue do not resume partially downloaded files (restart |
53 | from beginning) | |
3ce59dae | 54 | --cookies FILE file to read cookies from and dump cookie jar in |
4618f3da PH |
55 | --no-part do not use .part files |
56 | --no-mtime do not use the Last-modified header to set the file | |
57 | modification time | |
58 | --write-description write video description to a .description file | |
59 | --write-info-json write video metadata to a .info.json file | |
6bcd846b | 60 | |
cfcec693 | 61 | ## Verbosity / Simulation Options: |
4618f3da | 62 | -q, --quiet activates quiet mode |
6a1ca41e PH |
63 | -s, --simulate do not download the video and do not write anything |
64 | to disk | |
65 | --skip-download do not download the video | |
4618f3da PH |
66 | -g, --get-url simulate, quiet but print URL |
67 | -e, --get-title simulate, quiet but print title | |
68 | --get-thumbnail simulate, quiet but print thumbnail URL | |
69 | --get-description simulate, quiet but print video description | |
70 | --get-filename simulate, quiet but print output filename | |
6a1ca41e | 71 | --get-format simulate, quiet but print output format |
4618f3da PH |
72 | --no-progress do not print progress bar |
73 | --console-title display progress in console titlebar | |
c4105fa0 | 74 | -v, --verbose print various debugging information |
6bcd846b | 75 | |
cfcec693 | 76 | ## Video Format Options: |
4618f3da PH |
77 | -f, --format FORMAT video format code |
78 | --all-formats download all available video formats | |
561504ff PH |
79 | --prefer-free-formats prefer free video formats unless a specific one is |
80 | requested | |
4618f3da | 81 | --max-quality FORMAT highest quality format to download |
2761012f | 82 | -F, --list-formats list all available formats (currently youtube only) |
a0432a1e FV |
83 | --write-srt write video closed captions to a .srt file |
84 | (currently youtube only) | |
85 | --srt-lang LANG language of the closed captions to download | |
86 | (optional) use IETF language tags like 'en' | |
6bcd846b | 87 | |
cfcec693 | 88 | ## Authentication Options: |
4618f3da PH |
89 | -u, --username USERNAME account username |
90 | -p, --password PASSWORD account password | |
91 | -n, --netrc use .netrc authentication data | |
6bcd846b | 92 | |
cfcec693 | 93 | ## Post-processing Options: |
4618f3da | 94 | --extract-audio convert video files to audio-only files (requires |
505ed308 | 95 | ffmpeg or avconv and ffprobe or avprobe) |
d6639d05 PH |
96 | --audio-format FORMAT "best", "aac", "vorbis", "mp3", "m4a", or "wav"; |
97 | best by default | |
b24676ce | 98 | --audio-quality QUALITY ffmpeg/avconv audio quality specification, insert a |
3a68d7b4 FV |
99 | value between 0 (better) and 9 (worse) for VBR or a |
100 | specific bitrate like 128K (default 5) | |
6a1ca41e PH |
101 | -k, --keep-video keeps the video file on disk after the post- |
102 | processing; the video is erased by default | |
6bcd846b | 103 | |
cfcec693 | 104 | # FAQ |
447b1d71 PH |
105 | |
106 | ### Can you please put the -b option back? | |
107 | ||
108 | Most people asking this question are not aware that youtube-dl now defaults to downloading the highest available quality as reported by YouTube, which will be 1080p or 720p in some cases, so you no longer need the -b option. For some specific videos, maybe YouTube does not report them to be available in a specific high quality format you''re interested in. In that case, simply request it with the -f option and youtube-dl will try to download it. | |
109 | ||
f2a3a352 | 110 | ### I get HTTP error 402 when trying to download a video. What's this? |
447b1d71 | 111 | |
8236e851 | 112 | Apparently YouTube requires you to pass a CAPTCHA test if you download too much. We''re [considering to provide a way to let you solve the CAPTCHA](https://github.com/rg3/youtube-dl/issues/154), but at the moment, your best course of action is pointing a webbrowser to the youtube URL, solving the CAPTCHA, and restart youtube-dl. |
447b1d71 PH |
113 | |
114 | ### I have downloaded a video but how can I play it? | |
115 | ||
116 | Once the video is fully downloaded, use any video player, such as [vlc](http://www.videolan.org) or [mplayer](http://www.mplayerhq.hu/). | |
117 | ||
118 | ### The links provided by youtube-dl -g are not working anymore | |
119 | ||
a0432a1e | 120 | The URLs youtube-dl outputs require the downloader to have the correct cookies. Use the `--cookies` option to write the required cookies into a file, and advise your downloader to read cookies from that file. Some sites also require a common user agent to be used, use `--dump-user-agent` to see the one in use by youtube-dl. |
447b1d71 | 121 | |
454d6691 PH |
122 | ### ERROR: no fmt_url_map or conn information found in video info |
123 | ||
5a2ba45e | 124 | youtube has switched to a new video info format in July 2011 which is not supported by old versions of youtube-dl. You can update youtube-dl with `sudo youtube-dl --update`. |
454d6691 | 125 | |
6c5b442a PH |
126 | ### ERROR: unable to download video ### |
127 | ||
128 | youtube requires an additional signature since September 2012 which is not supported by old versions of youtube-dl. You can update youtube-dl with `sudo youtube-dl --update`. | |
129 | ||
5cdfaeb3 | 130 | ### SyntaxError: Non-ASCII character ### |
6c5b442a PH |
131 | |
132 | The error | |
133 | ||
134 | File "youtube-dl", line 2 | |
135 | SyntaxError: Non-ASCII character '\x93' ... | |
136 | ||
137 | means you're using an outdated version of Python. Please update to Python 2.6 or 2.7. | |
138 | ||
139 | To run youtube-dl under Python 2.5, you'll have to manually check it out like this: | |
140 | ||
141 | git clone git://github.com/rg3/youtube-dl.git | |
142 | cd youtube-dl | |
5cdfaeb3 | 143 | python -m youtube_dl --help |
6c5b442a PH |
144 | |
145 | Please note that Python 2.5 is not supported anymore. | |
146 | ||
5cdfaeb3 FV |
147 | ### What is this binary file? Where has the code gone? |
148 | ||
149 | Since June 2012 (#342) youtube-dl is packed as an executable zipfile, simply unzip it (might need renaming to `youtube-dl.zip` first on some systems) or clone the git repo to see the code. If you modify the code, you can run it by executing the `__main__.py` file. To recompile the executable, run `make compile`. | |
150 | ||
ce367443 FV |
151 | ### The exe throws a *Runtime error from Visual C++* |
152 | ||
153 | To run the exe you need to install first the [Microsoft Visual C++ 2008 Redistributable Package](http://www.microsoft.com/en-us/download/details.aspx?id=29). | |
154 | ||
cfcec693 | 155 | # COPYRIGHT |
803abae2 PH |
156 | |
157 | youtube-dl is released into the public domain by the copyright holders. | |
158 | ||
159 | This README file was originally written by Daniel Bolton (<https://github.com/dbbolton>) and is likewise released into the public domain. | |
6bcd846b | 160 | |
cfcec693 | 161 | # BUGS |
e133e121 | 162 | |
8236e851 | 163 | Bugs and suggestions should be reported at: <https://github.com/rg3/youtube-dl/issues> |
e133e121 PH |
164 | |
165 | Please include: | |
166 | ||
167 | * Your exact command line, like `youtube-dl -t "http://www.youtube.com/watch?v=uHlDtZ6Oc3s&feature=channel_video_title"`. A common mistake is not to escape the `&`. Putting URLs in quotes should solve this problem. | |
168 | * The output of `youtube-dl --version` | |
169 | * The output of `python --version` | |
170 | * The name and version of your Operating System ("Ubuntu 11.04 x64" or "Windows 7 x64" is usually enough). |