[CMD] youtube-dl - Download videos from youtube/vimeo/TED...

Discuss other useful utilities, general computing tips & tricks, Internet resources, etc.
tmplinshi
Posts: 1551
Joined: 01 Oct 2013, 14:57

[CMD] youtube-dl - Download videos from youtube/vimeo/TED...

27 Jan 2014, 21:31

youtube-dl is a small command-line program to download videos from YouTube.com and a few more sites. It requires the Python interpreter (2.6, 2.7, or 3.3+), and it is not platform specific. It should work in your Unix box, in Windows or in Mac OS X. It is released to the public domain, which means you can modify it, redistribute it or use it however you like.
Examples:
Example 1 - Download through proxy. (Execute in cmd window or save to bat file.)

Code: Select all

set http_proxy=http://localhost:8087/
youtube-dl.exe -t http://www.youtube.com/watch?v=Y_wNr_pXMlk
Example 2 - Download using video ID.

Code: Select all

youtube-dl.exe -t Y_wNr_pXMlk
Example 3 - Download multiple urls in a file.

Code: Select all

youtube-dl.exe -t -a url_list.txt
Example 4 - Download all videos of an user.

Code: Select all

youtube-dl -citw ytuser:uroboros07
Help text:

Code: Select all

Usage: youtube-dl [options] url [url...]

Options:
  General 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 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
    --user-agent UA            specify a custom user agent
    --referer REF              specify a custom referer, use if the video access

                               is restricted to one domain
    --list-extractors          List all supported extractors and the URLs they
                               would handle
    --extractor-descriptions   Output descriptions of all supported extractors
    --proxy URL                Use the specified HTTP/HTTPS proxy
    --no-check-certificate     Suppress HTTPS certificate validation.
    --cache-dir DIR            Location in the filesystem where youtube-dl can
                               store downloaded information permanently. By
                               default $XDG_CACHE_HOME/youtube-dl or ~/.cache
                               /youtube-dl .
    --no-cache-dir             Disable filesystem caching

  Video Selection:
    --playlist-start NUMBER    playlist video to start at (default is 1)
    --playlist-end NUMBER      playlist video to end at (default is last)
    --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 before this date
    --dateafter DATE           download only videos uploaded after this date
    --no-playlist              download only the currently playing video
    --age-limit YEARS          download only videos suitable for the given age
    --download-archive FILE    Download only videos not present in the archive
                               file. Record all downloaded videos in it.

  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)
    --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.

  Filesystem Options:
    -t, --title                use title in file name (default)
    --id                       use only video ID in file name
    -l, --literal              [deprecated] alias of --title
    -A, --auto-number          number downloaded files starting from 00000
    -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)s for the playlist the video is in,
                               %(playlist_index)s for the position in the
                               playlist and %% for a literal percent. Use - to
                               output to stdout. Can also be used to download to

                               a different directory, for example with -o '/my/d

                               ownloads/%(uploader)s/%(title)s-%(id)s.%(ext)s' .

    --autonumber-size NUMBER   Specifies 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, --batch-file FILE      file containing URLs to download ('-' for stdin)
    -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)
    --cookies FILE             file to read cookies from and dump cookie jar in
    --no-part                  do not use .part files
    --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 .annotation file
    --write-thumbnail          write thumbnail image to disk

  Verbosity / Simulation Options:
    -q, --quiet                activates quiet mode
    -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-filename             simulate, quiet but print output filename
    --get-format               simulate, quiet but print output format
    --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-intermediate-pages  print downloaded pages to debug problems(very
                               verbose)
    --write-pages              Write downloaded pages to files in the current
                               directory

  Video Format Options:
    -f, --format FORMAT        video format code, specifiy the order of
                               preference using slashes: "-f 22/17/18". "-f mp4"

                               and "-f flv" are also supported
    --all-formats              download all available video formats
    --prefer-free-formats      prefer free video formats unless a specific one
                               is requested
    --max-quality FORMAT       highest quality format to download
    -F, --list-formats         list all available formats (currently youtube
                               only)

  Subtitle Options:
    --write-sub                write subtitle file
    --write-auto-sub           write automatic subtitle file (youtube only)
    --all-subs                 downloads all the available subtitles of the
                               video
    --list-subs                lists all available subtitles for the video
    --sub-format FORMAT        subtitle format (default=srt) ([sbv/vtt] youtube
                               only)
    --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    account username
    -p, --password PASSWORD    account password
    -n, --netrc                use .netrc authentication data
    --video-password PASSWORD  video password (vimeo only)

  Post-processing Options:
    -x, --extract-audio        convert video files to audio-only files (requires

                               ffmpeg or avconv and ffprobe or avprobe)
    --audio-format FORMAT      "best", "aac", "vorbis", "mp3", "m4a", "opus", or

                               "wav"; best by default
    --audio-quality QUALITY    ffmpeg/avconv audio quality specification, 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)
    -k, --keep-video           keeps 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 mp4
                               videos)
    --add-metadata             add metadata to the files

Return to “Other Utilities & Resources”

Who is online

Users browsing this forum: No registered users and 29 guests