yt-dlp на сегодняшний день является очень мощным пакетом для работы с видео на ютубе. По сей день он активно развиватеся и привносит новые возможности в отличии от свеого старшего собрата, который уже устарел и давно не обновлялся youtube-dl (я всё равно его люблю).
Установка
Качаем TermuxПредоставляем доступ к файловой системе командой
termux-setup-storage
Обновляем пакеты
apt update
apt upgrade
Устанавливаем Питон (занимает много)
pkg install python
Сразу обновим менеджер пакетов пип
pip install --upgrade pip
Установим наш пакет yt-dlp
pip install yt-dlp
Если появилась ошибка ...Encountered error while trying to install package... пробуем установить пакет вот этой командой
python3 -m pip install --no-deps -U yt-dlp
В дальнейшем для поднятия качество потребуется установка ffmpeg
apt install ffmpeg
Качаем видео разных форматов и аудио в mp3 Лучший формат в mp4 обычно 720p
yt-dlp -f mp4 url
По форматам 720p
yt-dlp -f 22 url
360p
yt-dlp -f 18 url
Максимальное качество, обычно в формате webm
yt-dlp url
Скачать в mp3 (обычно битрейт от 128-140 зависит от видео)
yt-dlp -f 'ba' -x --audio-format mp3 URL -o '%(title)s.%(ext)s'
Дописав строчку --audio-quality и задав значение от 0 до 10 можно варьировать качество (по умолчанию 5, максимальное 0)
yt-dlp -f 'ba' -x --audio-format mp3 -o '%(title)s.%(ext)s'
Качаем в full HD формат mp4
yt-dlp -f 'bv[height=1080][ext=mp4]+ba[ext=m4a]' --merge-output-format mp4 URL
Пишем небольшие скрипты для скачивания видео и музыки с youtube в termux Для облгечения задачи и чтобы постоянно не вводить длинные команды, мы напишим пару скриптов для скачивания видео и музыки. Сперва установим текстовый редактор
apt install nano
Переходим в нашу корневую директорию termux с которой мы начинаем, команда
cd
Проверяем где находимся
pwd
Должно быть так
/data/data/com.termux/files/home
Создадим свой скрип для скачивание в mp3
nano mp3.sh
Добавим туда строки
#!/bin/bash echo input URL video youtube read varname yt-dlp -f 'ba' -x --audio-format mp3 "$varname" -o '%(title)s.%(ext)s' mv *.mp3 storage/downloads/
Последняя строка переносит на файл в mp3 в папку downloads Проверим его работоспособность
sh mp3.sh
По аналогии делаем скрипт и для видео
#!/bin/bash echo input URL video youtube read varname yt-dlp -f mp4 "$varname" mv *.mp4 storage/downloads/
Качаем в FULLHD
#!/bin/bash echo input URL video youtube read varname yt-dlp -f 'bv[height=1080][ext=mp4]+ba[ext=m4a]' --merge-output-format mp4 "$varname mv *.mp4 storage/downloads/
Качаем плейлист в формате mp3
yt-dlp --format bestaudio --extract-audio --audio-format mp3 --download-archive videos.txt https://www.youtube.com/playlist?list=PLOnp-UE9ll3WuNulRhIQjAsfx7bwZGcYp -o '%(channel_id)s/%(playlist_id)s/%(title)s.%(id)s.%(ext)s'
Качаем плейлист в 1080p с лучшим звуком
yt-dlp -f 'bv*[height=1080]+ba' --download-archive videos.txt https://www.youtube.com/playlist?list=PLlVlyGVtvuVnUjA4d6gHKCSrLAAm2n1e6 -o '%(channel_id)s/%(playlist_id)s/%(title)s.%(id)s.%(ext)s'
sh скрипты для скачивания с помощью yt-dlp в termux разных форматов
Скачать аудиоформат в mp3
#!/bin/bash cd storage/downloads/mp3/ echo input URL video youtube [mp3] read varname yt-dlp -f 'ba' -x --audio-format mp3 "$varname" -o '%(title)s.%(ext)s'
Качество 360p
#!/bin/bash cd storage/downloads/mp4/ echo input URL video youtube [360p] read varname yt-dlp -f 18 "$varname"
Скачать ролик в качестве 480p (редкий формат, нужен предустановлен ffmpeg)
#!/bin/bash cd storage/downloads/mp4/ echo input URL video youtube [480p] read varname yt-dlp -f 'bv[height=480][ext=mp4]+ba[ext=m4a]' --merge-output-format mp4 "$varname"
Скачать ролик в качестве 720p
#!/bin/bash cd storage/downloads/mp4/ echo input URL video youtube [720p] read varname yt-dlp -f 18 "$varname"
Скачать в лучшем качестве
#!/bin/bash cd storage/downloads/mp4/ echo input URL video youtube [best] read varname yt-dlp "$varname"
Данная команда загрузит видео в формате MP4 с разрешением 720p, сохранит описание видео в отдельный файл и использует список URL-адресов из файла url.txt для загрузки видео. Файлы видео будут сохранены в отдельных папках с именем канала и названием видео.
yt-dlp.exe -f 22 -o "%(uploader)s/%(title)s/%(title)s.%(ext)s" --write-description --batch-file=url.txt
Данная команда скачивает видео с канала в формате MP4 с лучшим качеством. Они сохраняются в отдельные папки с использованием имени канала и названия ролика, а также загружаются описания для каждого видео.
yt-dlp -f "bestvideo[ext=mp4]+bestaudio[ext=m4a][ext=mp4]" -o "%(uploader)s/%(title)s/%(title)s.%(ext)s" --write-description https://youtube.com/@AnimadLive?si=9LmmKXLMefjRC_6W
Обновляем в термукс
pip install --upgrade yt-dlp
Любим и чтим РЕСУРС
https://github.com/yt-dlp/yt-dlp