Таким образом, я пытаюсь загрузить весь канал YouTube с помощью youtube-dl. Я знаю, что при использовании команды-F она дает Вам список качественного типа видео. Мой вопрос - это: как загрузить высшее качество всех видео, таким образом, загрузка не принимает значение по умолчанию к 460 пунктам или что-то низко как этот.
Этот ответ не будет работать над более старыми версиями youtube-dl. Необходимо обновить youtube-dl к последней версии. Можно или установить последнюю версию youtube-dl локально в виртуальной среде Python ( virtualenv), или можно загрузить последнюю версию youtube-dl и установить ее глобально (sudo apt install python-pip && sudo pip install youtube-dl
). youtube-dl является также поспешным пакетом. Устанавливать его тип:
sudo snap install youtube-dl
Открывают терминал и тип:
youtube-dl -f best -ciw -o "%(title)s.%(ext)s" -v <url-of-channel>
..., где <url-of-channel>
заменяется URL канала.
Примечание: при загрузке большого количества видео необходимо изменить каталоги на каталог, где Вы хотите сохранить видео, прежде чем Вы начнете загружать их.
-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, for example to skip unavailable videos in a channel
-w, --no-overwrites
do not overwrite files
-o, --output
Output filename template, this example functions similarly to the old --title option
-v, --verbose
print various debugging information
TL;DR используйте флаг -f 'bestvideo[height>=720]+bestaudio/best'
, чтобы получить более высокое разрешение. Полная команда, которую я использовал:
youtube-dl -f "bestvideo[height>=720]+bestaudio/best" -ciw -o "%(title)s.%(ext)s" -v
Вот почему -f best
может не дать вам самого высокого разрешения.
Когда вы используете флаг -F
для перечисления возможных форматов файлов, иногда он указывает формат 360p как «лучший», например:
youtube-dl -F https://www.youtube.com/watch?v=FmZXCqqx6q0
[youtube] FmZXCqqx6q0: Downloading webpage
[info] Available formats for FmZXCqqx6q0:
format code extension resolution note
249 webm audio only tiny 61k , opus @ 50k (48000Hz), 12.74MiB
250 webm audio only tiny 80k , opus @ 70k (48000Hz), 16.87MiB
140 m4a audio only tiny 132k , m4a_dash container, mp4a.40.2@128k (44100Hz), 31.35MiB
251 webm audio only tiny 158k , opus @160k (48000Hz), 33.34MiB
...
244 webm 854x480 480p 271k , vp9, 30fps, video only, 35.05MiB
398 mp4 1280x720 720p 443k , av01.0.05M.08, 30fps, video only, 102.27MiB
247 webm 1280x720 720p 480k , vp9, 30fps, video only, 63.02MiB
136 mp4 1280x720 720p 489k , avc1.4d401f, 30fps, video only, 114.12MiB
18 mp4 640x360 360p 360k , avc1.42001E, 30fps, mp4a.40.2@ 96k (44100Hz), 87.29MiB (best)
Как видите, последний вариант указан как лучший, несмотря на низкое разрешение. Есть несколько способов обойти это, я пытался загрузить с канала, который загружается в формате 720p, поэтому самым простым способом для меня было использовать -f 'bestvideo[height>=720]+bestaudio/best '
флаг.
В зависимости от вашей ситуации вам, возможно, придется поиграть с выражением выбора формата, возможно, либо увеличив его с 720 до 1080, либо выбрав определенный формат файла, например mp4.
Чтобы увидеть другие примеры выбора формата
Чтобы увидеть полную разбивку параметров
Вам потребуется установить ffmpeg или конвертировать из mkv.