Why should I use these scripts?
yt-dlp used to work flawlessly. You could download as many videos as you wanted, from any platform you wanted. That's no longer the case. These days, if you download too many videos from YouTube, you'll be prompted to sign in and confirm you're not a bot. But signing in doesn't solve the problem. If you keep downloading, your account risks being banned from watching videos entirely. How many is too many? No one really knows. And to make matters worse, this issue is starting to spread to other platforms as well.
To avoid getting your IP or channel banned, you can use these scripts. How do they work? They leverage yt-dlp's proxy option with a large pool of proxies. Whenever a proxy gets banned, the scripts automatically rotate to the next one. This way, you can give these fuckers the middle finger and download as many videos as you want.
Requirements:
1. Download the latest yt-dlp_linux release.
2. Install ffmpeg.
3. Create a folder named "videos" in the directory where you downloaded the scripts.
4. Proxy list
Note: If you don't know how to save and execute shell scripts read this.
Script Explanations:
1. Proxie Testing: ./test-proxies.sh
Why test proxies?
When you're using free proxy lists, it's a good idea to test them beforehand. A lot of them are already burned. This script tests them extremely fast. If you let ./yt-proxy-run.sh handle a huge proxy list all on its own, it will take a long time to finish because it checks each proxy one by one.
The ./test-proxies.sh script checks which proxies work with YouTube and which ones don't. It outputs a working_proxies.txt file, which is then used by both ./yt-proxy-run.sh and ./yt-audio-proxy-run.sh.
I use the scripts with SOCKS5 proxies. I'm not sure if they work with SOCKS4 or other proxy types.
2. Downloading videos in the highest quality possible: ./yt-proxy-run.sh
3. Extracting audio from videos in the best quality available: ./yt-audio-proxy-run.sh
That's pretty much it.
Using the scipts:
user@hostname:~/yt-dlp_proxy$ ls
test-proxies.sh videos yt-audio-proxy-run.sh yt-dlp_linux yt-proxy-run.sh
user@hostname:~/yt-dlp_proxy$ ./test-proxies.sh https://proxies/socks5.txt
user@hostname:~/yt-dlp_proxy$ ls
test-proxies.sh videos working_proxies.txt yt-audio-proxy-run.sh yt-dlp_linux yt-proxy-run.sh
user@hostname:~/yt-dlp_proxy$ ./yt-proxy-run.sh https://www.youtube.com/@Channel/videos
The video or audio files will begin downloading to the videos folder.