24

I always use youtube for getting information I need.

What I want is a script or a command that grabs and downloads all videos from a given channel.

NOTE: I tried youtube-dl but with no success.

12
  • I don't think there is one command you can use to do that...
    – Thomas Ward
    Nov 13, 2013 at 2:52
  • Google works to make this difficult. They don't want you to do it.
    – Marc
    Nov 13, 2013 at 2:56
  • 5
    @ThomasW. : You obviously don't know about youtube-dl.
    – Ufoguy
    Dec 8, 2013 at 17:46
  • @Marc : Google tries makes downloading vidoes hard but if a program can download individual videos then its as easy as downloading the HTML page of the playlist link and grabbing all the links to individual videos.
    – Ufoguy
    Dec 8, 2013 at 17:50
  • @Marc : I'm saying that downloading may be hard, but grabbing links of video pages in a playlist is as easy as downloading the HTML page and grabbing individual videos html links from it. Not grabbing the actual video link but links to all the HTML pages in a playlist.
    – Ufoguy
    Dec 9, 2013 at 5:05

7 Answers 7

68

Use youtube-dl command to download videos straight off of YouTube.

To install youtube-dl either

  • Use pip to install from the official youtube-dl channel's:

    sudo apt install pip
    pip install youtube-dl
    
  • Or, use the Debian package manager and an appropriate PPA (source):

    sudo add-apt-repository ppa:nilarimogard/webupd8 -y
    sudo apt update
    sudo apt install youtube-dl
    
  • If you're getting errors, try upgrading youtube-dl to the latest version (depending on the method of installation):

    pip install --upgrade youtube-dl
    sudo apt update && sudo apt upgrade youtube-dl
    

To download an entire channel

youtube-dl https://www.youtube.com/user/ChannelFoo

To download all videos on a playlist

youtube-dl https://www.youtube.com/user/ChannelFoo/playlist

To download a YouTube video as an MP3

youtube-dl -x --audio-format mp3 --audio-quality 320K <VIDEO_URL>
5
  • Recent distributions (at least Ubuntu 16) include the package. So simply running sudo apt install youtube-dl to install suffices.
    – Martin R.
    May 19, 2016 at 14:51
  • True. But the package works fine in my case and I try not to install 3rd party PPAs if possible.
    – Martin R.
    May 19, 2016 at 17:01
  • youtube-dl -i --download-archive log ytuser:<USER>. With -i youtube-dl will continue on download errors. With --download-archive it will download only videos not listed in the archive file. Jun 1, 2016 at 19:50
  • The best is to just download the source
    – Stígandr
    Nov 25, 2016 at 6:45
  • 2
    what if I only know the channel Id, but not the username? . edit -> askubuntu.com/questions/856911/…
    – phil294
    Feb 10, 2017 at 17:55
3

Use this for downloading all the videos from a youtube channel:

Open the terminal and type:

 youtube-dl -f best -citw -v <url-of-channel>

where <url-of-channel> is replaced by the URL of the channel.

Note: if you are downloading a lot of videos, you should change directories to the directory where you want to save the videos before you start downloading them.

Explanation:

-f, --format FORMAT
video format code. The special name "best" will pick the best quality.

-c, --continue                   
force resume of partially downloaded files .

-i, --ignore-errors              
continue on download errors .

-t, --title
use title in file name (default)

-w, --no-overwrites
do not overwrite files 

-v, --verbose
print various debugging information

Note: I usually prefer this:

youtube-dl -f 18 url/complete-playlist-url
1
  • 1
    Your last command snippet is very important but not obvious, so I'll elaborate a little here for other readers. Trying to download a channel using youtube-dl https://www.youtube.com/channel/$CHANNEL/videos downloads the first page of 30 videos only. By appending /complete-playlist-url, eg. youtube-dl https://www.youtube.com/channel/$CHANNEL/videos/complete-playlist-url, you'll get the full playlist of a channel and download all of the videos in a single command. Thanks for sharing. Jul 14, 2022 at 16:34
1

You can try http://clipgrab.org/ , it works for me.

3
  • clipgrab is the way to go.
    – N8tron
    May 12, 2014 at 23:19
  • ..uh? clipgrab does not have any "download all videos by channel" command
    – phil294
    Feb 10, 2017 at 17:37
  • tried it but there is no option to get the whole playlist at once, and it show only a few youtube videos by search term Jan 5, 2020 at 14:28
0

Google; Ultimate YouTube Downloader, it can be sideloaded into Chromium/Chrome. You may have to restart your browser twice.

0

Personally, I use Uget as download manager and Youtube Multi downloader to generate links, and from Uget gui you go to File->Batch downloads->Clipboard batch.

you can install uget by typing

sudo apt-get install uget

youtubemultidownloader Uget

0

I use jDownloader 2 (available for windows, linux, mac, ...) for downloading complete youtube channels. be sure to have the latest version and specify the download-folder in the settings.

then simply paste the channel url in the "linkgrabber" tab and press ’process playlist’.

wait until the progress-symbol on the bottom right has finished moving. you're able to uncheck unwanted content in the right window, for example audio files. you are able to specify what resolution you want to download for all selected videos (the standard setting is maximum resolution).

If you want to choose a more light weight resolution select the concerning videos by holding the Ctrl Key or press Ctrl + A to select all videos. Then right click on a selected video and go to youtube.com -> change variant -> change video variant

screenshot: change video resolution variants

screenshot: choose video variants

by holding Ctrl you can choose additional variants.

then right-click one of the listed videos and choose either 'start all downloads' or 'start downloads' for selected videos only.

while downloading, you can configure the maximum simultaneous downloads and connections in the bottom right drop-down menu. For example, I choose 1 download at the same time with maximum of 5 connections per hoster. furthermore, you're able to set bandwith settings in the same menu.

if you want to download another channel, it might be useful to change the download folder before downloading, right-click on selected videos and go to Properties -> Set Download Directory screenshot: change download directory for selected videos

0

you can use youtube-dl but it needs the latest version. and in the distro packages it rarely has. so you need to go to for the how to install;

https://github.com/ytdl-org/youtube-dl/blob/master/README.md#how-do-i-update-youtube-dl

this is how to install youtube-dl properly (from the website above)

remove the current version from the distro type;

sudo apt-get remove -y youtube-dl

then, to install from the official website type;

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

hash -r

then you can download an entire playlist with

youtube-dl <URL PLAYLIST>

You must log in to answer this question.