- INSTALLATION
- DESCRIPTION
- OPTIONS
- CONFIGURATION
- OUTPUT TEMPLATE
- FORMAT SELECTION
- VIDEO SELECTION
- FAQ
- DEVELOPER INSTRUCTIONS
- BUGS
- COPYRIGHT
INSTALLATION
sudo curl https://yt-dl.org/latest/youtube-dl -o /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl
brew install youtube-dl
sudo pip install youtube-dl
DESCRIPTION
youtube-dl [OPTIONS] URL [URL...]
OPTIONS
-h, --help Print this help text and exit
--version Print program version and exit
-U, --update Update this program to latest version. Make sure that you have sufficient permissions (run with sudo if needed)
-i, --ignore-errors Continue on download errors, for example to skip unavailable videos in a playlist
--abort-on-error Abort downloading of further videos (in the playlist or the command line) if an error occurs
--dump-user-agent Display the current browser identification
--list-extractors List all supported extractors
--extractor-descriptions Output descriptions of all supported extractors
--force-generic-extractor Force extraction to use the generic extractor
--default-search PREFIX Use this prefix for unqualified URLs. For example "gvsearch2:" downloads two videos from google videos for youtube-dl "large apple".
Use the value "auto" to let youtube-dl guess ("auto_warning" to emit a warning when guessing). "error" just throws an error. The
default value "fixup_error" repairs broken URLs, but emits an error if this is not possible instead of searching.
--ignore-config Do not read configuration files. When given in the global configuration file /etc/youtube-dl.conf: Do not read the user configuration
in ~/.config/youtube-dl/config (%APPDATA%/youtube-dl/config.txt on Windows)
--flat-playlist Do not extract the videos of a playlist, only list them.
--no-color Do not emit color codes in output
Network Options:
--proxy URL Use the specified HTTP/HTTPS proxy. Pass in an empty string (--proxy "") for direct connection
--socket-timeout SECONDS Time to wait before giving up, in seconds
--source-address IP Client-side IP address to bind to (experimental)
-4, --force-ipv4 Make all connections via IPv4 (experimental)
-6, --force-ipv6 Make all connections via IPv6 (experimental)
--cn-verification-proxy URL Use this proxy to verify the IP address for some Chinese sites. The default proxy specified by --proxy (or none, if the options is
not present) is used for the actual downloading. (experimental)
Video Selection:
--playlist-start NUMBER Playlist video to start at (default is 1)
--playlist-end NUMBER Playlist video to end at (default is last)
--playlist-items ITEM_SPEC Playlist video items to download. Specify indices of the videos in the playlist separated by commas like: "--playlist-items 1,2,5,8"
if you want to download videos indexed 1, 2, 5, 8 in the playlist. You can specify range: "--playlist-items 1-3,7,10-13", it will
download the videos at index 1, 2, 3, 7, 10, 11, 12 and 13.
--match-title REGEX Download only matching titles (regex or caseless sub-string)
--reject-title REGEX Skip download for matching titles (regex or caseless sub-string)
--max-downloads NUMBER Abort after downloading NUMBER files
--min-filesize SIZE Do not download any videos smaller than SIZE (e.g. 50k or 44.6m)
--max-filesize SIZE Do not download any videos larger than SIZE (e.g. 50k or 44.6m)
--date DATE Download only videos uploaded in this date
--datebefore DATE Download only videos uploaded on or before this date (i.e. inclusive)
--dateafter DATE Download only videos uploaded on or after this date (i.e. inclusive)
--min-views COUNT Do not download any videos with less than COUNT views
--max-views COUNT Do not download any videos with more than COUNT views
--match-filter FILTER Generic video filter (experimental). Specify any key (see help for -o for a list of available keys) to match if the key is present,
!key to check if the key is not present,key > NUMBER (like "comment_count > 12", also works with >=, <, <=, !=, =) to compare against
a number, and & to require multiple matches. Values which are not known are excluded unless you put a question mark (?) after the
operator.For example, to only match videos that have been liked more than 100 times and disliked less than 50 times (or the dislike
functionality is not available at the given service), but who also have a description, use --match-filter "like_count > 100 &
dislike_count <? 50 & description" .
--no-playlist Download only the video, if the URL refers to a video and a playlist.
--yes-playlist Download the playlist, if the URL refers to a video and a playlist.
--age-limit YEARS Download only videos suitable for the given age
--download-archive FILE Download only videos not listed in the archive file. Record the IDs of all downloaded videos in it.
--include-ads Download advertisements as well (experimental)
Download Options:
-r, --rate-limit LIMIT Maximum download rate in bytes per second (e.g. 50K or 4.2M)
-R, --retries RETRIES Number of retries (default is 10), or "infinite".
--buffer-size SIZE Size of download buffer (e.g. 1024 or 16K) (default is 1024)
--no-resize-buffer Do not automatically adjust the buffer size. By default, the buffer size is automatically resized from an initial value of SIZE.
--playlist-reverse Download playlist videos in reverse order
--xattr-set-filesize Set file xattribute ytdl.filesize with expected filesize (experimental)
--hls-prefer-native Use the native HLS downloader instead of ffmpeg (experimental)
--external-downloader COMMAND Use the specified external downloader. Currently supports aria2c,axel,curl,httpie,wget
--external-downloader-args ARGS Give these arguments to the external downloader
Filesystem Options:
-a, --batch-file FILE File containing URLs to download ('-' for stdin)
--id Use only video ID in file name
-o, --output TEMPLATE Output filename template. Use %(title)s to get the title, %(uploader)s for the uploader name, %(uploader_id)s for the uploader
nickname if different, %(autonumber)s to get an automatically incremented number, %(ext)s for the filename extension, %(format)s for
the format description (like "22 - 1280x720" or "HD"), %(format_id)s for the unique id of the format (like YouTube's itags: "137"),
%(upload_date)s for the upload date (YYYYMMDD), %(extractor)s for the provider (youtube, metacafe, etc), %(id)s for the video id,
%(playlist_title)s, %(playlist_id)s, or %(playlist)s (=title if present, ID otherwise) for the playlist the video is in,
%(playlist_index)s for the position in the playlist. %(height)s and %(width)s for the width and height of the video format.
%(resolution)s for a textual description of the resolution of the video format. %% for a literal percent. Use - to output to stdout.
Can also be used to download to a different directory, for example with -o '/my/downloads/%(uploader)s/%(title)s-%(id)s.%(ext)s' .
--autonumber-size NUMBER Specify the number of digits in %(autonumber)s when it is present in output filename template or --auto-number option is given
--restrict-filenames Restrict filenames to only ASCII characters, and avoid "&" and spaces in filenames
-A, --auto-number [deprecated; use -o "%(autonumber)s-%(title)s.%(ext)s" ] Number downloaded files starting from 00000
-t, --title [deprecated] Use title in file name (default)
-l, --literal [deprecated] Alias of --title
-w, --no-overwrites Do not overwrite files
-c, --continue Force resume of partially downloaded files. By default, youtube-dl will resume downloads if possible.
--no-continue Do not resume partially downloaded files (restart from beginning)
--no-part Do not use .part files - write directly into output file
--no-mtime Do not use the Last-modified header to set the file modification time
--write-description Write video description to a .description file
--write-info-json Write video metadata to a .info.json file
--write-annotations Write video annotations to a .annotations.xml file
--load-info FILE JSON file containing the video information (created with the "--write-info-json" option)
--cookies FILE File to read cookies from and dump cookie jar in
--cache-dir DIR Location in the filesystem where youtube-dl can store some downloaded information permanently. By default $XDG_CACHE_HOME/youtube-dl
or ~/.cache/youtube-dl . At the moment, only YouTube player files (for videos with obfuscated signatures) are cached, but that may
change.
--no-cache-dir Disable filesystem caching
--rm-cache-dir Delete all filesystem cache files
Thumbnail images:
--write-thumbnail Write thumbnail image to disk
--write-all-thumbnails Write all thumbnail image formats to disk
--list-thumbnails Simulate and list all available thumbnail formats
Verbosity / Simulation Options:
-q, --quiet Activate quiet mode
--no-warnings Ignore warnings
-s, --simulate Do not download the video and do not write anything to disk
--skip-download Do not download the video
-g, --get-url Simulate, quiet but print URL
-e, --get-title Simulate, quiet but print title
--get-id Simulate, quiet but print id
--get-thumbnail Simulate, quiet but print thumbnail URL
--get-description Simulate, quiet but print video description
--get-duration Simulate, quiet but print video length
--get-filename Simulate, quiet but print output filename
--get-format Simulate, quiet but print output format
-j, --dump-json Simulate, quiet but print JSON information. See --output for a description of available keys.
-J, --dump-single-json Simulate, quiet but print JSON information for each command-line argument. If the URL refers to a playlist, dump the whole playlist
information in a single line.
--print-json Be quiet and print the video information as JSON (video is still being downloaded).
--newline Output progress bar as new lines
--no-progress Do not print progress bar
--console-title Display progress in console titlebar
-v, --verbose Print various debugging information
--dump-pages Print downloaded pages encoded using base64 to debug problems (very verbose)
--write-pages Write downloaded intermediary pages to files in the current directory to debug problems
--print-traffic Display sent and read HTTP traffic
-C, --call-home Contact the youtube-dl server for debugging
--no-call-home Do NOT contact the youtube-dl server for debugging
Workarounds:
--encoding ENCODING Force the specified encoding (experimental)
--no-check-certificate Suppress HTTPS certificate validation
--prefer-insecure Use an unencrypted connection to retrieve information about the video. (Currently supported only for YouTube)
--user-agent UA Specify a custom user agent
--referer URL Specify a custom referer, use if the video access is restricted to one domain
--add-header FIELD:VALUE Specify a custom HTTP header and its value, separated by a colon ':'. You can use this option multiple times
--bidi-workaround Work around terminals that lack bidirectional text support. Requires bidiv or fribidi executable in PATH
--sleep-interval SECONDS Number of seconds to sleep before each download.
Video Format Options:
-f, --format FORMAT Video format code, see the "FORMAT SELECTION" for all the info
--all-formats Download all available video formats
--prefer-free-formats Prefer free video formats unless a specific one is requested
-F, --list-formats List all available formats
--youtube-skip-dash-manifest Do not download the DASH manifests and related data on YouTube videos
--merge-output-format FORMAT If a merge is required (e.g. bestvideo+bestaudio), output to given container format. One of mkv, mp4, ogg, webm, flv. Ignored if no
merge is required
Subtitle Options:
--write-sub Write subtitle file
--write-auto-sub Write automatic subtitle file (YouTube only)
--all-subs Download all the available subtitles of the video
--list-subs List all available subtitles for the video
--sub-format FORMAT Subtitle format, accepts formats preference, for example: "srt" or "ass/srt/best"
--sub-lang LANGS Languages of the subtitles to download (optional) separated by commas, use IETF language tags like 'en,pt'
Authentication Options:
-u, --username USERNAME Login with this account ID
-p, --password PASSWORD Account password. If this option is left out, youtube-dl will ask interactively.
-2, --twofactor TWOFACTOR Two-factor auth code
-n, --netrc Use .netrc authentication data
--video-password PASSWORD Video password (vimeo, smotri, youku)
Post-processing Options:
-x, --extract-audio Convert video files to audio-only files (requires ffmpeg or avconv and ffprobe or avprobe)
--audio-format FORMAT Specify audio format: "best", "aac", "vorbis", "mp3", "m4a", "opus", or "wav"; "best" by default
--audio-quality QUALITY Specify ffmpeg/avconv audio quality, insert a value between 0 (better) and 9 (worse) for VBR or a specific bitrate like 128K (default
5)
--recode-video FORMAT Encode the video to another format if necessary (currently supported: mp4|flv|ogg|webm|mkv|avi)
--postprocessor-args ARGS Give these arguments to the postprocessor
-k, --keep-video Keep the video file on disk after the post-processing; the video is erased by default
--no-post-overwrites Do not overwrite post-processed files; the post-processed files are overwritten by default
--embed-subs Embed subtitles in the video (only for mkv and mp4 videos)
--embed-thumbnail Embed thumbnail in the audio as cover art
--add-metadata Write metadata to the video file
--metadata-from-title FORMAT Parse additional metadata like song title / artist from the video title. The format syntax is the same as --output, the parsed
parameters replace existing values. Additional templates: %(album)s, %(artist)s. Example: --metadata-from-title "%(artist)s -
%(title)s" matches a title like "Coldplay - Paradise"
--xattrs Write metadata to the video file's xattrs (using dublin core and xdg standards)
--fixup POLICY Automatically correct known faults of the file. One of never (do nothing), warn (only emit a warning), detect_or_warn (the default;
fix file if we can, warn otherwise)
--prefer-avconv Prefer avconv over ffmpeg for running the postprocessors (default)
--prefer-ffmpeg Prefer ffmpeg over avconv for running the postprocessors
--ffmpeg-location PATH Location of the ffmpeg/avconv binary; either the path to the binary or its containing directory.
--exec CMD Execute a command on the file after downloading, similar to find's -exec syntax. Example: --exec 'adb push {} /sdcard/Music/ && rm
{}'
--convert-subtitles FORMAT Convert the subtitles to other format (currently supported: srt|ass|vtt)
CONFIGURATION
/etc/youtube-dl.conf
and user wide configuration file at ~/.config/youtube-dl/config
. On Windows, the user wide configuration file locations are %APPDATA%\youtube-dl\config.txt
or C:\Users\<user name>\youtube-dl.conf
. For example, with the following configration file youtube-dl will always extract the audio, not copy the mtime and use proxy:--extract-audio
--no-mtime
--proxy 127.0.0.1:3128
--ignore-config
if you want to disable configuration file for a particular youtube-dl run.
.netrc
file
Authentication with --username
and --password
) in order not to pass credentials as command line arguments on every youtube-dl execution and prevent tracking plain text passwords in shell command history. You can achieve this using .netrc
file on per extractor basis. For that you will need to create .netrc
file in your $HOME
and restrict permissions to read/write by you only:touch $HOME/.netrc
chmod a-rwx,u+rw $HOME/.netrc
machine <extractor> login <login> password <password>
machine youtube login myaccount@gmail.com password my_youtube_password
machine twitch login my_twitch_account_name password my_twitch_password
.netrc
file you should pass --netrc
to youtube-dl or to place it in configuration file.%HOME%
environment variable manually.OUTPUT TEMPLATE
-o
option allows users to indicate a template for the output file names. The basic usage is not to set any template arguments when downloading a single file, like in youtube-dl -o funny_video.flv "http://some/video"
. However, it may contain special sequences that will be replaced when downloading each video. The special sequences have the format %(NAME)s
. To clarify, that is a percent symbol followed by a name in parenthesis, followed by a lowercase S. Allowed names are:id
: The sequence will be replaced by the video identifier.url
: The sequence will be replaced by the video URL.uploader
: The sequence will be replaced by the nickname of the person who uploaded the video.upload_date
: The sequence will be replaced by the upload date in YYYYMMDD format.title
: The sequence will be replaced by the video title.ext
: The sequence will be replaced by the appropriate extension (like flv or mp4).epoch
: The sequence will be replaced by the Unix epoch when creating the file.autonumber
: The sequence will be replaced by a five-digit number that will be increased with each download, starting at zero.playlist
: The name or the id of the playlist that contains the video.playlist_index
: The index of the video in the playlist, a five-digit number.format_id
: The sequence will be replaced by the format code specified by--format
.
%(title)s-%(id)s.%(ext)s
.--restrict-filenames
flag to get a shorter title:$ youtube-dl --get-filename -o "%(title)s.%(ext)s" BaW_jenozKc
youtube-dl test video ''_ä↭𝕐.mp4 # All kinds of weird characters
$ youtube-dl --get-filename -o "%(title)s.%(ext)s" BaW_jenozKc --restrict-filenames
youtube-dl_test_video_.mp4 # A simple file name
FORMAT SELECTION
-f 22
. You can get the list of available formats using --list-formats
, you can also use a file extension (currently it supports aac, m4a, mp3, mp4, ogg, wav, webm) or the special names best
, bestvideo
, bestaudio
and worst
.-f 22/17/18
. You can also filter the video results by putting a condition in brackets, as in -f "best[height=720]"
(or -f "[filesize>10M]"
). This works for filesize, height, width, tbr, abr, vbr, asr, and fps and the comparisons <, <=, >, >=, =, != and for ext, acodec, vcodec, container, and protocol and the comparisons =, != . Formats for which the value is not known are excluded unless you put a question mark (?) after the operator. You can combine format filters, so -f "[height <=? 720][tbr>500]"
selects up to 720p videos (or videos where the height is not known) with a bitrate of at least 500 KBit/s. Use commas to download multiple formats, such as -f 136/137/mp4/bestvideo,140/m4a/bestaudio
. You can merge the video and audio of two formats into a single file using -f <video-format>+<audio-format>
(requires ffmpeg or avconv), for example -f bestvideo+bestaudio
. Format selectors can also be grouped using parentheses, for example if you want to download the best mp4 and webm formats with a height lower than 480 you can use -f '(mp4,webm)[height<480]'
.-f bestvideo+bestaudio/best
as default format selection (see #5447, #5456). If ffmpeg or avconv are installed this results in downloading bestvideo
and bestaudio
separately and muxing them together into a single file giving the best overall quality available. Otherwise it falls back to best
and results in downloading best available quality served as a single file. best
is also needed for videos that don't come from YouTube because they don't provide the audio and video in two different files. If you want to only download some dash formats (for example if you are not interested in getting videos with a resolution higher than 1080p), you can add -f bestvideo[height<=?1080]+bestaudio/best
to your configuration file. Note that if you use youtube-dl to stream to stdout
(and most likely to pipe it to your media player then), i.e. you explicitly specify output template as -o -
, youtube-dl still uses -f best
format selection in order to start content delivery immediately to your player and not to wait until bestvideo
and bestaudio
are downloaded and muxed.-f best
. You may want to add it to the configuration file in order not to type it every time you run youtube-dl.VIDEO SELECTION
--date
, --datebefore
or --dateafter
, they accept dates in two formats:- Absolute dates: Dates in the format
YYYYMMDD
. - Relative dates: Dates in the format
(now|today)[+-][0-9](day|week|month|year)(s)?
# Download only the videos uploaded in the last 6 months
$ youtube-dl --dateafter now-6months
# Download only the videos uploaded on January 1, 1970
$ youtube-dl --date 19700101
$ # will only download the videos uploaded in the 200x decade
$ youtube-dl --dateafter 20000101 --datebefore 20091231
FAQ
How do I update youtube-dl?
youtube-dl -U
(or, on Linux, sudo youtube-dl -U
).sudo pip install -U youtube-dl
is sufficient to update.sudo apt-get remove -y youtube-dl
sudo wget https://yt-dl.org/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+x /usr/local/bin/youtube-dl
hash -r
sudo youtube-dl -U
.
Unable to extract OpenGraph title
on YouTube playlists
I'm getting an error
-citw
?
Do I always have to pass -citw
that is regularly useful is -i
.Can you please put the -b option back?
-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.I get HTTP error 402 when trying to download a video. What's this?
I have downloaded a video but how can I play it?
I extracted a video URL with -g, but it does not play on another machine / in my webbrowser.
--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.-o -
to let youtube-dl stream a video to stdout, or simply allow the player to download the files written by youtube-dl in turn.ERROR: no fmt_url_map or conn information found in video info
ERROR: unable to download video
[1] 2839
or 'v' is not recognized as an internal or external command
Video URL contains an ampersand and I'm getting some strange output youtube-dl 'https://www.youtube.com/watch?t=4&v=BaW_jenozKc'
youtube-dl https://www.youtube.com/watch?t=4\&v=BaW_jenozKc
youtube-dl "https://www.youtube.com/watch?t=4&v=BaW_jenozKc"
ExtractorError: Could not find JS function u'OF'
HTTP Error 429: Too Many Requests or 402: Payment Required
--proxy
or --source-address
options to select another IP address.SyntaxError: Non-ASCII character
File "youtube-dl", line 2
SyntaxError: Non-ASCII character '\x93' ...
What is this binary file? Where has the code gone?
youtube-dl.zip
first on some systems) or clone the git repository, as laid out above. If you modify the code, you can run it by executing the __main__.py
file. To recompile the executable, run make youtube-dl
.The exe throws a Runtime error from Visual C++
On Windows, how should I set up ffmpeg and youtube-dl? Where should I put the exe files?
C:\bin
, or C:\Users\<User name>\bin
), put all the executables directly in there, and then set your PATH environment variable to include that directory.youtube-dl
or ffmpeg
, no matter what directory you're in.How do I put downloads into a specific folder?
-o
to specify an output template, for example -o "/home/user/videos/%(title)s-%(id)s.%(ext)s"
. If you want this for all of your downloads, put the option into your configuration file.
-
?
How do I download a video starting with a http://www.youtube.com/watch?v=
or separate the ID from the options with --
:youtube-dl -- -wNyEUrxzFU
youtube-dl "http://www.youtube.com/watch?v=-wNyEUrxzFU"
How do I pass cookies to youtube-dl?
--cookies
option, for example --cookies /path/to/cookies/file.txt
. Note that cookies file must be in Mozilla/Netscape format and the first line of cookies file must be either # HTTP Cookie File
or # Netscape HTTP Cookie File
. Make sure you have correct newline formatin cookies file and convert newlines if necessary to correspond your OS, namely CRLF
(\r\n
) for Windows, LF
(\n
) for Linux and CR
(\r
) for Mac OS. HTTP Error 400: Bad Request
when using --cookies
is a good sign of invalid newline format.Can you add support for this anime video site, or site which shows current movies for free?
How can I speed up work on my issue?
important
or urgent
.How can I detect whether a given URL is supported by youtube-dl?
UnsupportedError
exception if you run it from a Python program.DEVELOPER INSTRUCTIONS
python -m youtube_dl
python -m unittest discover
python test/test_download.py
nosetests
- python
- make
- pandoc
- zip
- nosetests
Adding support for a new site
yourextractor
):- Fork this repository
- Check out the source code with
git clone git@github.com:YOUR_GITHUB_USERNAME/youtube-dl.git
- Start a new git branch with
cd youtube-dl; git checkout -b yourextractor
- Start with this simple template and save it to
youtube_dl/extractor/yourextractor.py
:# coding: utf-8 from __future__ import unicode_literals from .common import InfoExtractor class YourExtractorIE(InfoExtractor): _VALID_URL = r'https?://(?:www\.)?yourextractor\.com/watch/(?P<id>[0-9]+)' _TEST = { 'url': 'http://yourextractor.com/watch/42', 'md5': 'TODO: md5 sum of the first 10241 bytes of the video file (use --test)', 'info_dict': { 'id': '42', 'ext': 'mp4', 'title': 'Video title goes here', 'thumbnail': 're:^https?://.*\.jpg$', # TODO more properties, either as: # * A value # * MD5 checksum; start the string with md5: # * A regular expression; start the string with re: # * Any Python type (for example int or float) } } def _real_extract(self, url): video_id = self._match_id(url) webpage = self._download_webpage(url, video_id) # TODO more code goes here, for example ... title = self._html_search_regex(r'<h1>(.*?)</h1>', webpage, 'title') return { 'id': video_id, 'title': title, 'description': self._og_search_description(webpage), # TODO more properties (see youtube_dl/extractor/common.py) }
- Add an import in
youtube_dl/extractor/__init__.py
. - Run
python test/test_download.py TestDownload.test_YourExtractor
. This should fail at first, but you can continually re-run it until you're done. If you decide to add more than one test, then rename_TEST
to_TESTS
and make it into a list of dictionaries. The tests will be then be namedTestDownload.test_YourExtractor
,TestDownload.test_YourExtractor_1
,TestDownload.test_YourExtractor_2
, etc. - Have a look at
youtube_dl/extractor/common.py
for possible helper methods and a detailed description of what your extractor should and may return. Add tests and code for as many as you want. - If you can, check the code with flake8.
-
$ git add youtube_dl/extractor/__init__.py $ git add youtube_dl/extractor/yourextractor.py $ git commit -m '[yourextractor] Add new extractor' $ git push origin yourextractor
- Finally, create a pull request. We'll then review and merge it.
EMBEDDING YOUTUBE-DL
from __future__ import unicode_literals
import youtube_dl
ydl_opts = {}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['http://www.youtube.com/watch?v=BaW_jenozKc'])
logger
object.from __future__ import unicode_literals
import youtube_dl
class MyLogger(object):
def debug(self, msg):
pass
def warning(self, msg):
pass
def error(self, msg):
print(msg)
def my_hook(d):
if d['status'] == 'finished':
print('Done downloading, now converting ...')
ydl_opts = {
'format': 'bestaudio/best',
'postprocessors': [{
'key': 'FFmpegExtractAudio',
'preferredcodec': 'mp3',
'preferredquality': '192',
}],
'logger': MyLogger(),
'progress_hooks': [my_hook],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
ydl.download(['http://www.youtube.com/watch?v=BaW_jenozKc'])
BUGS
-v
.Is the description of the issue itself sufficient?
- What the problem is
- How it could be fixed
- How your proposed solution would look like
ERROR: Unable to extract ...
and you cannot reproduce it from multiple countries, add --dump-pages
(warning: this will yield a rather large output, redirect it to the file log.txt
by adding >log.txt 2>&1
to your command-line) or upload the .dump
files you get when you add --write-pages
somewhere.Are you using the latest version?
Is the issue already documented?
Why are existing options not enough?
Is there enough context in your bug report?
Does the issue involve one problem, and one problem only?
Is anyone going to need the feature?
Is your question about youtube-dl?
https://github.com/ytdl-org/youtube-dl
wget https://yt-dl.org/downloads/latest/youtube-dl
chmod 755
youtube-dl
./youtube-dl --proxy socks5://127.0.0.1:10086 -f mp4 https://youtu.be/jegxKxpJ060
related post: http://briteming.blogspot.com/2014/07/youtubeyoutube-dl.html
---------
使用 Youtube-DL 离线下载 YouTube 视频并且 VPS 上在线观看
Linux系统安装:
apt-get install python-pip -y
OS X系统安装:
Windows系统安装:
基础功能介绍
下载视频
youtube-dl URL
下载全部格式
列出视频的所有格式/清晰度
下载指定格式视频
离线下载/后台下载
-S
创建一个活动,这时候你就进入了这个活动中,你就可以去下载视频了,这时候即使关闭ssh也不会断开下载。 -r
来重新进入这个活动VPS中在线播放
这个其实很简单,HTML5本身就可以去播放指定格式的视频,所以我们只需要搭建一个nginx或者apache,把视频下载到默认虚拟主机的文件夹里,就可以在线观看了. /var/www
目录下载视频。 ls -a
查看当前目录下的文件,找到你的视频文件名称,比如:233.mp4 http://你的VPS_IP/233.mp4
http://vps_IP/
就可以看到一个简陋的列表了。Media Downloader
Description
Media Downloader is a light web interface for Youtube-dl. By hosting your own media downloader, you, your friends and your familly are allowed to use youtube-dl to download music or video on the web without installing anything nor using a terminal.A lot of sites are supported (700+), including YouTube, dailymotion, Bandcamp, Facebook, SoundCloud, GoogleDrive, Imgur, Instagram, Vimeo, Vevo, twitch, Twitter... (a full list is available here).
After the download you can stream your videos from your web browser or save it on your computer directly from the list page. It supports simultaneous downloads in background.
News
- You can now choose which quality and format to download.
Requirements
- A web server (Apache or nginx)
- PHP >= 5.4
- Python 2.7 for Youtube-dl
- Youtube-dl
- avconv or ffmpeg may be required for "Best Ever" quality (since it will merge both audio and video best available quality)
How to install?
- Clone this repo in your web folder (ex: /var/www).
- Edit config.php as you want it to work.
- Create the "downloads" folder.
- Check permissions.
- Load index.php to check that everything works.
Set a password
- Open config/config.php
- Set security to true
- Find a password, hash it with md5 and replace the value of password.
echo -n root|md5sum| sed 's/ .*//'
# Returns the hash 63a9f0ea7bb98050796b649e85481845
from https://github.com/Kallys/MediaDownloader
相关帖子:
http://briteming.blogspot.com/2014/07/youtubeyoutube-dl.html
----------
youtube-dl
curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
chmod a+rx /usr/local/bin/youtube-dl
apt-get install curl
apt-get install python
youtube-dl -U
youtube-dl URL
youtube-dl -c -i -a video_url.txt
-a 参数表示读取外部链接文件。
-c 断点续传(如果由于意外原因下载中断了,再次启动下载命令时,可以实现断点续传)
-i 忽略报错(如果出现某些链接无法打开或者下载的问题,会自动绕过,继续下载其他视频)
在ubuntu vps上安装youtube-dl
作者 | Hitesh Jethva
译者 | lujun9972
sudo apt-get update -y
sudo apt-get upgrade -y
curl
命令可以进行下载:curl
:
sudo apt-get install curl -y
youtube-dl
的二进制包:
curl -L https://yt-dl.org/latest/youtube-dl -o /usr/bin/youtube-dl
youtube-dl
二进制包的权限:
sudo chmod 755 /usr/bin/youtube-dl
youtube-dl
算是安装好了,现在可以进行下一步了。youtube-dl
的所有可选项:
youtube-dl --h
youtube-dl
支持多种视频格式,像 Mp4,WebM,3gp,以及 FLV 都支持。你可以使用下面命令列出指定视频所支持的所有格式:
youtube-dl -F https://www.youtube.com/watch?v=j_JgXJ-apXs
[info] Available formats for j_JgXJ-apXs:
format code extension resolution note
139 m4a audio only DASH audio 56k , m4a_dash container, mp4a.40.5@ 48k (22050Hz), 756.44KiB
249 webm audio only DASH audio 56k , opus @ 50k, 724.28KiB
250 webm audio only DASH audio 69k , opus @ 70k, 902.75KiB
171 webm audio only DASH audio 110k , vorbis@128k, 1.32MiB
251 webm audio only DASH audio 122k , opus @160k, 1.57MiB
140 m4a audio only DASH audio 146k , m4a_dash container, mp4a.40.2@128k (44100Hz), 1.97MiB
278 webm 256x144 144p 97k , webm container, vp9, 24fps, video only, 1.33MiB
160 mp4 256x144 DASH video 102k , avc1.4d400c, 24fps, video only, 731.53KiB
133 mp4 426x240 DASH video 174k , avc1.4d4015, 24fps, video only, 1.36MiB
242 webm 426x240 240p 221k , vp9, 24fps, video only, 1.74MiB
134 mp4 640x360 DASH video 369k , avc1.4d401e, 24fps, video only, 2.90MiB
243 webm 640x360 360p 500k , vp9, 24fps, video only, 4.15MiB
135 mp4 854x480 DASH video 746k , avc1.4d401e, 24fps, video only, 6.11MiB
244 webm 854x480 480p 844k , vp9, 24fps, video only, 7.27MiB
247 webm 1280x720 720p 1155k , vp9, 24fps, video only, 9.21MiB
136 mp4 1280x720 DASH video 1300k , avc1.4d401f, 24fps, video only, 9.66MiB
248 webm 1920x1080 1080p 1732k , vp9, 24fps, video only, 14.24MiB
137 mp4 1920x1080 DASH video 2217k , avc1.640028, 24fps, video only, 15.28MiB
17 3gp 176x144 small , mp4v.20.3, mp4a.40.2@ 24k
36 3gp 320x180 small , mp4v.20.3, mp4a.40.2
43 webm 640x360 medium , vp8.0, vorbis@128k
18 mp4 640x360 medium , avc1.42001E, mp4a.40.2@ 96k
22 mp4 1280x720 hd720 , avc1.64001F, mp4a.40.2@192k (best)
-f
指定你想要下载的格式,如下所示:
youtube-dl -f 18 https://www.youtube.com/watch?v=j_JgXJ-apXs
[youtube] j_JgXJ-apXs: Downloading webpage
[youtube] j_JgXJ-apXs: Downloading video info webpage
[youtube] j_JgXJ-apXs: Extracting video information
[youtube] j_JgXJ-apXs: Downloading MPD manifest
[download] Destination: B.A. PASS 2 Trailer no 2 _ Filmybox-j_JgXJ-apXs.mp4
[download] 100% of 6.90MiB in 00:47
youtube-dl https://www.youtube.com/watch?v=j_JgXJ-apXs -x --audio-format mp3
youtube-dl -citw https://www.youtube.com/channel/UCatfiM69M9ZnNhOzy0jZ41A
--proxy
来下载视频:
youtube-dl --proxy http://proxy-ip:port https://www.youtube.com/watch?v=j_JgXJ-apXs
youtube-list.txt
),然后运行下面命令:
youtube-dl -a youtube-list.txt
youtube-dlg
是你最好的选择。youtube-dlg
是一款由 wxPython 所写的免费而开源的 youtube-dl
界面。
sudo add-apt-repository ppa:nilarimogard/webupd8
youtube-dlg
:
sudo apt-get update -y
sudo apt-get install youtube-dlg -y
-------------------------------------------------------------------
GUI for command-line video downloader (youtube-dl annie).
Video Download Manager
Download
- Install the JRE8 first (If you have installed the JRE, skip this step).
- Download the VDM.zip, unzip it and then click the
VDM.jar
file
那么该如何使用呢?
使用方法
以Windows系统为例,需要安装python,所以我们前往python官网,下载python的安装包来安装,python官网:
https://www.python.org/
安装好后,在键盘按下“win”+r输入cmd,调出命令窗口,输入python,如果出现版本信息,说明python安装成功了,咱们就可以进行下一步.
然后前往youtube-dl官网,将youtube-dl的安装包下载下来.
下载 “youtube-dl.exe”,将它放在一个文件夹当中。接着,开启这个文件夹,在空白处按住 “shift”键并点击右键,在快捷菜单中选择 “在此处打开 Powershell 窗口”
在命令窗口输入cmd,我们就可以使用youtube-dl来下载视频啦.
比如想下载一个YouTube视频,只需要打开一个YouTube视频地址,复制粘贴后,在命令窗口输入这样的命令:
youtube-dl https://www.youtube.com/watch?v=qVYL7p2L3IQ
按下回车,youtube-dl 就会自动解析网页上的视频,然后默认下载最高画质的视频源到同一个目录下。待到 youtube-dl 提示下载 100% 完成,就可以在本地打开视频观看了。
下载速度超快,不到一分钟,100M的视频就下载好了,你说快不快,比我想象的还要强大。
这是 youtube-dl 最简单的使用方法,它的功能当然不止于此。在 youtube-dl 的 官方主页上,详细列出了 youtube-dl 的各种功能以及调用方法。
温馨提示
不仅支持YouTube,还支持其他视频网站,你可以试试pornhub,xvideos之类的成人网站,或许有惊喜哦。
项目地址
- https://github.com/oleksis/youtube-dl-gui/
内容详情
该项目也偶然发现的,看了作者的介绍,下载下来,简单试用了一下,相当不错,几乎完美的将所有的YouTube-dl的功能都实现了。
作者给出的这示意图,就是如何使用这款应用来下载视频,支持多种视频,音频格式。作者使用的是YouTube网站做演示,其实还支持不少网站,以便下载音频,视频等。
支持网站列表:
- 1up.com
- 20min
- 220.ro
- 23video
- 24video
- 3Q SDN
- 3sat
- 4tube
- 56.com
- 5min
- 6play
- 7plus
- 8tracks
- 91porn
- 9c9media
- 9gag
- 9now.com.au
- abc.net.au
- abc.net.au:iview
- abcnews
- abcnews:video
- ABC Owned Television Stations
- abcotvs:clips
- AcademicEarth:Course
- acast
- acast:channel
- Anime Digital Network
- AdobeConnect
- adobetv
- adobetv:channel
- adobetv:embed
- adobetv:show
- adobetv:video
- AdultSwim
- A+E Networks: A&E, Lifetime, History.com, FYI Network and History Vault
- aenetworks:collection
- aenetworks:show
- afreecatv.com
- AirMozilla
- AliExpressLive
- AlJazeera
- Allocine
- AlphaPorno
- Amara
- AMCNetworks
- AmericasTestKitchen
- npo.nl, ntr.nl, omroepwnl.nl, zapp.nl and npo3.nl
- AnimeOnDemand
- Anvato
- aol.com
- APA
- Aparat
- AppleConnect
- 臺灣蘋果日報
- ApplePodcasts
- appletrailers
- appletrailers:section
- archive.org videos
- ArcPublishing
- ARD
- ARD:mediathek
- ARDBetaMediathek
- Arkena
- arte.sky.it
- ArteTV
- ArteTVEmbed
- ArteTVPlaylist
- AsianCrush
- AsianCrushPlaylist
- AtresPlayer
- ATTTechChannel
- ATVAt
- AudiMedia
- AudioBoom
- audiomack
- audiomack:album
- AWAAN
- awaan:live
- awaan:season
- awaan:video
- AZ Medien videos
- 百度视频
- Bandcamp
- Bandcamp:album
- Bandcamp:weekly
- BiliBili番剧
- BBC
- BBC iPlayer
- BBC articles
- bbc.co.uk:iplayer:playlist
- bbc.co.uk:playlist
- BBVTV
- Beatport
- Beeg
- BehindKink
- Bellator
- BellMedia
- Bet
- bfi:player
- bfmtv
- bfmtv:article
- bfmtv:live
- BibelTV
- Bigflix
- Bild.de
- BiliBili
- BilibiliAudio
- BilibiliAudioAlbum
- BiliBiliPlayer
- BioBioChileTV
- Biography
- BIQLE
- BitChute
- BitChuteChannel
- BleacherReport
- BleacherReportCMS
- blinkx
- Bloomberg
- BokeCC
- BongaCams
- BostonGlobe
- Box
- Bundeszentrale für politische Bildung
- Bayerischer Rundfunk
- BravoTV
- Break
- brightcove:legacy
- brightcove:new
- Bayerischer Rundfunk Mediathek
- Bergens Tidende Articles
- Bergens Tidende - Vestlendingen
- BusinessInsider
- BuzzFeed
- BYUtv
- Camdemy
- CamdemyFolder
- CamModels
- CamTube
- CamWithHer
- canalc2.tv
- mycanal.fr and piwiplus.fr
- Canvas
- canvas.be and een.be
- CarambaTV
- CarambaTVPage
- CartoonNetwork
- cbc.ca
- cbc.ca:olympics
- cbc.ca:player
- cbc.ca:watch
- cbc.ca:watch:video
- CBS
- CBSInteractive
- CBSLocal
- CBSLocalArticle
- CBS News
- cbsnews:embed
- CBS News Live Videos
- CBSSports
- CCMA
- 央视网
- CDA
- CeskaTelevize
- CeskaTelevizePorady
- Channel 9
- CharlieRose
- Chaturbate
- Chilloutzone
- chirbit
- chirbit:profile
- cielotv.it
- Cinchcast
- Cinemax
- CiscoLiveSearch
- CiscoLiveSession
- CJSW
- cliphunter
- Clippit
- ClipRs
- Clipsyndicate
- CloserToTruth
- CloudflareStream
- Cloudy
- Clubic
- Clyp
- cmt.com
- CNBC
- CNBCVideo
- CNN
- CNNArticle
- CNNBlogs
- ComedyCentral
- ComedyCentralFullEpisodes
- ComedyCentralShortname
- ComedyCentralTV
- Condé Nast media group: Allure, Architectural Digest, Ars Technica, Bon Appétit, Brides, Condé Nast, Condé Nast Traveler, Details, Epicurious, GQ, Glamour, Golf Digest, SELF, Teen Vogue, The New Yorker, Vanity Fair, Vogue, W Magazine, WIRED
- CONtv
- Corus
- Coub
- Cracked
- Crackle
- CrooksAndLiars
- crunchyroll
- crunchyroll:playlist
- C-SPAN
- 華視新聞
- CTV
- CTVNews
- Nippon Television Network
- Culturebox
- CultureUnplugged
- curiositystream
- curiositystream:collection
- CWTV
- DailyMail
- dailymotion
- dailymotion:playlist
- dailymotion:user
- daum.net
- daum.net:clip
- daum.net:playlist
- daum.net:user
- DBTV
- DctpTv
- DeezerPlaylist
- defense.gouv.fr
- democracynow
- Filmarchiv - Deutsches Historisches Museum
- Digg
- DigitallySpeaking
- Digiteka
- Discovery
- DiscoveryGo
- DiscoveryGoPlaylist
- DiscoveryNetworksDe
- DiscoveryVR
- Disney
- dlive:stream
- dlive:vod
- Dotsub
- DouyuShow
- 斗鱼
- DPlay
- DRBonanza
- Dropbox
- DrTuber
- drtv
- drtv:live
- DTube
- Dumpert
- http://video.aktualne.cz/
- dw
- dw:article
- EaglePlatform
- EbaumsWorld
- EchoMsk
- egghead.io course
- egghead.io lesson
- ehftv
- eHow
- EinsUndEinsTV
- Einthusan
- eitb.tv
- EllenTube
- EllenTubePlaylist
- EllenTubeVideo
- El País
- Embedly
- EMPFlix
- Engadget
- Eporner
- EroProfile
- Escapist
- ESPN
- ESPNArticle
- EsriVideo
- Europa
- EWETV
- ExpoTV
- Expressen
- ExtremeTube
- EyedoTV
- FacebookPluginsVideo
- faz.net
- fc2
- fc2:embed
- Fczenit
- filmon
- filmon:channel
- Filmweb
- FiveThirtyEight
- FiveTV
- Flickr
- Folketinget (ft.dk; Danish parliament)
- FootyRoom
- Formula1
- FOX
- FOX9
- FOX9News
- Foxgay
- Fox News and Fox Business Video
- foxnews:article
- FoxSports
- france2.fr:generation-what
- FranceCulture
- FranceInter
- FranceTV
- FranceTVEmbed
- francetvinfo.fr
- FranceTVJeunesse
- FranceTVSite
- Freesound
- freespeech.org
- FreshLive
- FrontendMasters
- FrontendMastersCourse
- FrontendMastersLesson
- FujiTVFODPlus7
- Funimation
- Funk
- Fusion
- Fux
- Gaia
- GameInformer
- GameSpot
- GameStar
- Gaskrank
- Gazeta
- GDCVault
- Generic downloader that works on some sites
- Gfycat
- GiantBomb
- Giga
- GlattvisionTV
- Glide mobile video messages (glide.me)
- Globo
- GloboArticle
- Go
- GodTube
- Golem
- google:podcasts
- google:podcasts:feed
- GoogleDrive
- Goshgay
- GPUTechConf
- Groupon
- hbo
- HearThisAt
- Heise
- HellPorno
- helsinki.fi
- HentaiStigma
- hetklokhuis
- hgtv.com:show
- HiDive
- HistoricFilms
- history:player
- History.com Topic
- hitbox
- hitbox:live
- HitRecord
- 香港教育局教育電視 (HKETV) Educational Television, Hong Kong Educational Bureau
- HornBunny
- HotNewHipHop
- hotstar
- hotstar:playlist
- Howcast
- HowStuffWorks
- HRTi
- HRTiPlaylist
- 花椒直播
- Huffington Post
- Hungama
- HungamaSong
- Hypem
- ign.com
- IHeartRadio
- iheartradio:podcast
- Internet Movie Database trailers
- Internet Movie Database lists
- Imgur
- imgur:album
- imgur:gallery
- Ina
- Inc
- IndavideoEmbed
- InfoQ
- Instagram hashtag search
- Instagram user profile
- Internazionale
- InternetVideoArchive
- IPrima
- 爱奇艺
- Ir90Tv
- ITTF
- ITV
- ITVBTCC
- ivi.ru
- ivi.ru compilations
- Ivideon TV
- Iwara
- Izlesene
- Jamendo
- JamendoAlbum
- JeuxVideo
- Joj
- Jove
- JWPlatform
- Kakao
- Kaltura
- Kankan
- Karaoketv
- KarriereVideos
- Katsomo
- KeezMovies
- Ketnet
- KhanAcademy
- KickStarter
- KinjaEmbed
- KinoPoisk
- KonserthusetPlay
- Красвью
- Ku6
- KUSI
- 酷我音乐 - 专辑
- 酷我音乐 - 分类
- 酷我音乐 - 排行榜
- 酷我音乐 - MV
- 酷我音乐 - 歌手
- 酷我音乐
- la7.it
- laola1tv
- laola1tv:embed
- lbry
- lbry:channel
- LCI
- Lcp
- LcpPlay
- 乐视网
- Lecture2Go
- Lecturio
- LecturioCourse
- LecturioDeCourse
- LEGO
- Lemonde
- Lenta
- LePlaylist
- 乐视云
- Libsyn
- Life.ru
- life:embed
- limelight
- limelight:channel
- limelight:channel_list
- LineTV
- linkedin:learning
- linkedin:learning:course
- LinuxAcademy
- LiTV
- LiveJournal
- LiveLeak
- LiveLeakEmbed
- livestream
- livestream:original
- LnkGo
- Library of Congress
- LocalNews8
- LoveHomePorn
- lrt.lt
- lynda.com videos
- lynda.com online courses
- m6
- Видео@Mail.Ru
- Музыка@Mail.Ru
- Музыка@Mail.Ru
- MallTV
- mangomolo:live
- mangomolo:video
- ManyVids
- Markiza
- MarkizaPage
- massengeschmack.tv
- MatchTV
- MDR.DE and KiKA
- MedalTV
- media.ccc.de
- media.ccc.de:lists
- Medialaan
- Mediaset
- Mediasite
- MediasiteCatalog
- MediasiteNamedCatalog
- Medici
- megaphone.fm embedded players
- 美拍
- MelonVOD
- META
- metacafe
- Metacritic
- mewatch
- Mgoon
- 芒果TV
- MiaoPai
- MinistryGrid
- Minoto
- miomio.tv
- mitele.es
- mixcloud
- mixcloud:playlist
- mixcloud:user
- MLB
- Mnet
- MNetTV
- LetitBit video services: moevideo.net, playreplay.net and videochart.net
- Mofosex
- MofosexEmbed
- Mojvideo
- morningstar.com
- Motherless
- MotherlessGroup
- motorsport.com
- MovieClips
- MovieFap
- Moviezine
- MovingImage
- MSN
- MTG services
- mtv
- mtv.de
- mtv:video
- mtvjapan
- mtvservices:embedded
- münchen.tv
- Microsoft Virtual Academy videos
- Microsoft Virtual Academy courses
- Mwave
- MwaveMeetGreet
- MyChannels
- MySpace
- MySpace:album
- MySpass
- Myvi
- MyVidster
- MyviEmbed
- MyVisionTV
- n-tv.de
- natgeo:video
- NationalGeographicTV
- Naver
- NBA
- nba:watch
- nba:watch:collection
- NBAChannel
- NBAEmbed
- NBAWatchEmbed
- NBC
- NBCNews
- nbcolympics
- nbcolympics:stream
- NBCSports
- NBCSportsStream
- NBCSportsVPlayer
- NDR.de - Norddeutscher Rundfunk
- ndr:embed
- ndr:embed:base
- NDTV
- NerdCubedFeed
- 网易云音乐 - 专辑
- 网易云音乐 - 电台
- 网易云音乐 - MV
- 网易云音乐 - 歌单
- 网易云音乐 - 电台节目
- 网易云音乐 - 歌手
- 网易云音乐
- NetPlus
- Netzkino
- Newgrounds
- NewgroundsPlaylist
- Newstube
- 蘋果日報
- 蘋果日報 - 動新聞
- 壹電視
- Nexx
- NexxEmbed
- NhkVod
- NhkVodProgram
- nhl.com
- nick.com
- nick.de
- nickelodeon:br
- nickelodeonru
- nicknight
- ニコニコ動画
- NiconicoPlaylist
- Nintendo
- N-JOY
- njoy:embed
- 新日本プロレスワールド
- NobelPrize
- NonkTube
- Noovo
- Normalboots
- NosVideo
- TN.cz, Prásk.tv, Nova.cz, Novaplus.cz, FANDA.tv, Krásná.cz and Doma.cz
- NovaEmbed
- nowness
- nowness:playlist
- nowness:series
- Noz
- npo.nl, ntr.nl, omroepwnl.nl, zapp.nl and npo3.nl
- npo.nl:live
- npo.nl:radio
- npo.nl:radio:fragment
- Npr
- NRK
- NRKPlaylist
- NRKRadioPodkast
- NRK Skole
- NRK TV and NRK Radio
- NRK TV Direkte and NRK Radio Direkte
- NRKTVEpisode
- NRKTVEpisodes
- NRKTVSeason
- NRKTVSeries
- NRLTV
- ntv.ru
- Nuvid
- NYTimes
- NYTimesArticle
- NYTimesCooking
- NZZ
- ocw.mit.edu
- OdaTV
- Odnoklassniki
- OktoberfestTV
- OnDemandKorea
- onet.pl
- onet.tv
- onet.tv:channel
- OnetMVP
- OnionStudios
- Ooyala
- OoyalaExternal
- OraTV
- Radio Burgenland
- radio FM4
- fm4.orf.at stories
- iptv.ORF.at
- Radio Kärnten
- Radio Niederösterreich
- Radio Oberösterreich
- Radio Österreich 1
- Radio Österreich 3
- Radio Salzburg
- Radio Steiermark
- Radio Tirol
- ORF TVthek
- Radio Vorarlberg
- Radio Wien
- OsnatelTV
- OutsideTV
- PacktPub
温馨提示
虽然作者只提供了Windows版本的下载,但是也提供了源码包,该应用是python生成的,所以可以利用python在各系统生成对应版本,那么MacOS和Linux系统也能用了.
----------
不仅仅能下载youtube,youtube-dl在线视频下载神器
YouTuBe视频下载方法多种多样,相关的下载工具网上也有很多,比如阿刚之前介绍过的YouTube Video Downloader就是一款使用简便功能强大的下载工具。那么今天再给大家介绍一款轻量级的youtube下载神器–youtube-dl
Youtube-dl是github上的一个开源项目,它是一款轻量级的命令行下载工具。是的,就跟之前介绍的Aria2一样youtube-dl没有GUI图形界面,只有粗糙的命令行。但youtube-dl功能却非常强大,可以直接解析下载youtube多清晰度视频,它还支持包括优酷土豆BBC等国内外上百个视频网站的下载,甚至还支持XXX网站的视频解析与下载,比如Xvideos网上面的小视频…咳咳…..
youtube-dl是一款跨平台多源命令行下载工具,支持Windows、Mac OSX和Linux。阿刚这里简单说下在windows下的安装和使用。
为YouTube-dl创建环境变量
如果你懂Dos命令的话,你可以直接打开CMD使用它,不过为了方便我们可以为其创建环境变量。在Windows系统环境变量Path中填写youtube-dl.exe的路径。例如D:\Program Files\youtube,图中所示为windows10系统环境变量.
环境变量创建之后我们便可以在CMD命令中输入:youtube-dl -h 查看youtube-dl的各项命令。
youtube-dl命令
youtube-dl命令参数较多,输入-h可查看其支持的各种命令,下面是常用的几个参数:
youtube-dl --list-extractors #查看支持网站列表
youtube-dl -U #程序升级
youtube-dl --get-format URL #获取视频格式
youtube-dl -F URL #获取所有格式(目前仅支持YouTube)
命令参数较多,大家可以查看youtube.dl官方说明文档查阅相关命令。阿刚这里以某个MV为例简单说明一下如何使用youtube-dl。
如果视频有多种清晰度可选择,可以使用-F命令获取视频所有的格式。
youtube-dl默认下载质量最优的视频,比如这个视频中直接指明720P为最好(best),虽然视频有1080P的,但youtube默认的1080视频音频与视频分离,所以如果要下载1080P视频,我们需要分别指定视频和音频。比如图中Video ID为137, Audio ID为251,所以下载的命令如下:
youtube-dl -f 137+251 http://www.youtube.com/watch?v=n-BXNXvTvV4
youtube-dl同样可以下载优酷视频,优酷的视频都被分割为多个Flv片段,下载之后需要自己合成,另外-F命令只限于youtube网站,其他视频网站无法通过此命令获取视频的所有格式信息。这一点让人遗憾,不过经测试下载优酷视频可以达到宽带最高下载速度,这点要比国内那些同类软件要优秀的多。
第三方编译版
如果你受不了youtube-dl枯燥乏味的命令行,那么不妨试试下面这款第三方编译后的youtube-DLG,各项设置都一目了然,省去你键入命令行的步骤。你只需粘贴视频地址,即可实现下载。
工具默认选项比较多,基本上包括了youtube-dl常用命令行所能实现的功能,比如默认下载的视频清晰度,转码,以及字幕下载等等。如果你不喜欢命令行操作的话,那么不妨试试这个小工具。
总结
总的来说youtube-dl是款功能强大的在线下载工具,支持上百个全球视频网站的下载,如果你有海外视频下载的需求,youtube-dl绝对是你的首选.
---------------------------
MrS0m30n3/youtube-dl-gui
--------------不仅仅是youtube,youtube-dl在线视频下载神器.
Youtube-dl是github上的一个开源项目,它是一款轻量级的命令行 下载实用工具。是的,就跟之前介绍的Aria2一样youtube-dl没有GUI图形界面,只有粗糙的命令行。但youtube-dl功能却非常强大,可以直接解析下载youtube多清晰度视频,它还支持包括优酷土豆BBC等国内外上百个视频网站的下载,甚至还支持XXX网站的视频解析与下载,比如Xvideos网上面的小视频…咳咳…..
youtube-dl是一款跨平台多源命令行下载工具,支持Windows、Mac OSX和Linux。这里简单说下在windows下的安装和使用。
为YouTube-dl创建环境变量:
如果你懂Dos命令的话,你可以直接打开CMD使用它,不过为了方便我们可以为其创建环境变量。在Windows系统环境变量Path中填写youtube-dl.exe的路径。例如D:\Program Files\youtube,图中所示为windows10系统环境变量。
环境变量创建之后我们便可以在CMD命令中输入:youtube-dl -h 查看youtube-dl的各项命令。
youtube-dl命令参数较多,输入-h可查看其支持的各种命令,下面是常用的几个参数
youtube-dl --list-extractors #查看支持网站列表
youtube-dl -U #程序升级
youtube-dl --get-format URL #获取视频格式
youtube-dl -F URL #获取所有格式(目前仅支持YouTube)
命令参数较多,大家可以查看youtube-dl官方说明文档查阅相关命令。
如果视频有多种清晰度可选择,可以使用-F命令获取视频所有的格式。
youtube-dl默认下载质量最优的视频,比如这个视频中直接指明720P为最好(best),虽然视频有1080P的,但youtube默认的1080视频音频与视频分离,所以如果要下载1080P视频,我们需要分别指定视频和音频。比如图中Video ID为137, Audio ID为251,所以下载的命令如下:
youtube-dl -f 137+251 http://www.youtube.com/watch?v=n-BXNXvTvV4
youtube-dl同样可以下载优酷视频,优酷的视频都被分割为多个Flv片段,下载之后需要自己合成,另外-F命令只限于youtube网站,其他视频网站无法通过此命令获取视频的所有格式信息。这一点让人遗憾,不过经测试下载优酷视频可以达到宽带最高下载速度,这点要比国内那些同类软件要优秀的多。
总的来说,youtube-dl是款功能强大的在线下载工具,支持上百个全球视频网站的下载,如果你有海外视频下载的需求,youtube-dl绝对是你的首选。
官方网站:https://ytdl-org.github.io/youtube-dl/index.html