I maintain a massive archive of YouTube channels I enjoy. I've actually helped restore numerous channels that were banned or deleted over the past couple of years. I was the only one (as far as I am aware) who had a complete archive of Sargon of Akkad's channel before he deleted all his old videos for his generic conservative britbong grift. Programs like yt-dlp may seem intimidating to someone who hasn't used command line before, but just reading some tutorials will show you that they are actually quite easy to figure out. Now that I have my string of commands perfected, I literally just copy and paste them in along with the channel URL and start ripping entire channels at a time. Null's
guide is a great starting point, but be sure to check the command list on the github page to see all the cool shit you do.
I'll post my command here now. This command does quite a few things. I won't go over all of them, but in a nutshell:
- Downloads the video to a specific path. yt-dlp by default will download to the path you have the executable in. This allows you to arrange things easily. At my peak I was running 4 instances at once ripping channels into 4 separate folders. Replace (Archive path) in the "*Archive path*/%(upload_date)s - %(title)s.%(ext)s" string to the folder path you want to download to.
- Downloads the videos in 480p and 30fps, drastically lowering the filesize. If you want to download in hight quality/fps, just tweak the [height<=480][fps=30] section (ie. [height<=1080][fps=60] to download everything in 1080p/60fps. For channels that have things like video game gameplay or high production quality stuff, I'll raise quality. If it's just some dude talking in front of a webcam, I'm fine with 480p. I always have things set up to download best audio quality however.
- Writes the video metadata (comments, description, thumbnails) into separate files, which you can later arrange into their own folders.
The command:
yt-dlp -o "(Archive path)/%(upload_date)s - %(title)s.%(ext)s" -f "bestvideo[height<=480][fps=30]+bestaudio/best" --write-info-json --embed-metadata --embed-chapters --write-comments --write-thumbnail --embed-thumbnail --write-subs --embed-subs -N 6 --no-part --download-archive archive.txt (channel url)
Replace (Archive Path) as stated above, and (Channel URL) with the URL of the channel you want to download (you will need to run a seperate download operation for their main videos page, shorts page, and Live page).
I highly recommend creating a shortcut file to quickly navigate command prompt to the yt-dlp program. You can find out how to do this online.