Download YouTube Videos with youtube-dl

By  on  

When preparing for the 8 hour flights to and from London, I knew I couldn't just code the whole time -- I needed some decent entertainment.  One source of free, excellent entertainment is YouTube, but I had no desire to pay for internet on the flight.  With all of this in mind, I installed youtube-dl -- a utility for downloading YouTube videos to your local drive.

To install youtube-dl, run the following from command line:

brew install youtube-dl

With youtube-dl available, simply run the utility with a URL:

# Download a video!
youtube-dl https://www.youtube.com/watch?v=bS5P_LAqiVg

# Download a video as audio
youtube-dl -x https://www.youtube.com/watch?v=--HaFAtC17U

Executing that will download the given YouTube video to your machine.  youtube-dl has more capabilities than just downloading videos such as: thumbnail retrieval, conversion to mp3 or other formats (assuming you have ffmpeg available), logging in, getting subtitles, and more.

Grab youtube-dl if you're looking for music or video from YouTube -- it's the best application available to do the job!

Recent Features

Incredible Demos

  • By
    Implementing Basic and Fancy Show/Hide in MooTools 1.2

    One of the great parts of MooTools is that the library itself allows for maximum flexibility within its provided classes. You can see evidence of this in the "Class" class' implement method. Using the implement method, you can add your own methods to...

  • By
    Using MooTools For Opacity

    Although it's possible to achieve opacity using CSS, the hacks involved aren't pretty. If you're using the MooTools JavaScript library, opacity is as easy as using an element's "set" method. The following MooTools snippet takes every image with the "opacity" class and sets...

Discussion

  1. youtube-dl is the best tool to download audio and video from YouTube. Ubuntu users can install youtube-dl with:

    sudo apt-get install youtube-dl
  2. is there a way to choose which quality you’ll be downloading?

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!