Предварительно: Что нужно знать про YouTube и yt-dlp
YouTube регулярно меняет защиту от скачивания, поэтому:
Обновляйте yt-dlp часто — используйте nightly версию для лучшей совместимости
yt-dlp --update-to nightly
Требуется JavaScript-рантайм — для расшифровки подписей YouTube (yt-dlp-ejs)
# Установить с нужными зависимостями
pip install "yt-dlp[default]"
Установите ffmpeg — нужен для объединения видео и аудио
# Linux (Ubuntu/Debian)
sudo apt install ffmpeg
# macOS
brew install ffmpeg
# Fedora
sudo dnf install ffmpeg
Проверьте установку:
yt-dlp --version
ffmpeg -version
Пример 1: Скачать одно видео в лучшем качестве
Сценарий: Вы хотите скачать интересное видео с YouTube в лучшем доступном качестве.
Самый простой способ
yt-dlp ""
Это загрузит видео с лучшим качеством видео + лучшим качеством аудио, объединит их в один файл. Файл сохранится в текущую папку с названием как название видео.
Что происходит “под капотом”:
yt-dlp соединяется с YouTube
Получает информацию о доступных форматах
Выбирает лучшее видео и лучшее аудио
Скачивает их отдельно (они идут отдельно на YouTube)
Использует ffmpeg для объединения в один MP4 файл
Удаляет временные файлы
Контролировать качество
# HD качество (720p) или лучшее, что есть
yt-dlp -f "720/best" ""
# Точно 1080p, если нет — ошибка
yt-dlp -f "1080" ""
# 4K качество
yt-dlp -f "2160/best" ""
# Минимальное качество (экономия трафика)
yt-dlp -f "worst" ""
Увидеть все доступные форматы
yt-dlp -F ""
Вывод:
ID EXT RES FPS CH ACODEC ABPS VCODEC
249 webm audio -- 2 opus 50k --
250 webm audio -- 2 opus 70k --
251 webm audio -- 2 opus 160k --
140 m4a audio -- 2 mp4a.40.2 128k --
278 webm 256x144 30 -- -- -- vp9
160 mp4 256x144 30 -- -- -- h264
394 webm 256x144 30 -- -- -- av1
...
18 mp4 360x640 30 2 aac 128k h264
22 mp4 720x1280 30 2 aac 192k h264
Объяснение:
ID 251 — лучший аудиопоток (Opus 160k)
ID 22 — видео 720p с встроенным аудио (для старых плееров)
ID 249-251 — чистый аудио (без видео)
Практический пример: качество vs размер файла
# Маленький файл (~50 МБ для 10 мин видео)
yt-dlp -f "360/best" "https://..."
# Стандарт (~150 МБ для 10 мин видео)
yt-dlp -f "720/best" "https://..."
# Высокое качество (~400 МБ для 10 мин видео)
yt-dlp -f "1080/best" "https://..."
# Ограничить размер файла
yt-dlp -f "best[filesize<200M]" "https://..."
Пример 2: Скачать только аудио (музыка с YouTube)
Сценарий: Вы нашли отличную музыку на YouTube и хотите сохранить как MP3.
Быстрый способ
yt-dlp -x --audio-format mp3 "https://www.youtube.com/watch?v=xxxxx"
Что происходит:
-x — извлечь только аудио (игнорировать видео)
--audio-format mp3 — конвертировать в MP3 через ffmpeg
Разные форматы аудио
# MP3 (универсальный, больший размер)
yt-dlp -x --audio-format mp3 "https://..."
# AAC (хороший баланс качество/размер)
yt-dlp -x --audio-format aac "https://..."
# Opus (лучшее качество при малом размере)
yt-dlp -x --audio-format opus "https://..."
# VORBIS (открытый формат)
yt-dlp -x --audio-format vorbis "https://..."
# WAV (без сжатия, большой размер)
yt-dlp -x --audio-format wav "https://..."
С красивым названием файла
yt-dlp -x --audio-format mp3 \
-o "%(artist)s - %(title)s.%(ext)s" \
"https://www.youtube.com/watch?v=xxxxx"
Файл сохранится как: Автор - Название песни.mp3
Скачать несколько песен
Создайте файл playlist.txt:
https://www.youtube.com/watch?v=song1
https://www.youtube.com/watch?v=song2
https://www.youtube.com/watch?v=song3
Затем:
yt-dlp -x --audio-format mp3 \
-o "%(title)s.%(ext)s" \
-a playlist.txt
Пример 3: Скачать плейлист
Сценарий: Вы нашли плейлист с интересными видео и хотите скачать их все.
Скачать весь плейлист
yt-dlp "https://www.youtube.com/playlist?list=PLxxxxxxxxxxxxxx"
yt-dlp автоматически:
Найдет все видео в плейлисте
Скачает их одно за другим
Сохранит с номерами: 01 - название.mp4, 02 - название.mp4, и т.д.
Видеть, сколько видео в плейлисте
yt-dlp -s --list-formats "https://www.youtube.com/playlist?list=PLxxxxxx"
Скачать только конкретные видео
# Только первые 10 видео
yt-dlp -I 1:10 "https://www.youtube.com/playlist?list=PLxxxxxx"
# Видео с 5 по 15
yt-dlp -I 5:15 "https://www.youtube.com/playlist?list=PLxxxxxx"
# Последние 5 видео
yt-dlp -I -5: "https://www.youtube.com/playlist?list=PLxxxxxx"
# Каждое второе видео
yt-dlp -I 1::2 "https://www.youtube.com/playlist?list=PLxxxxxx"
# Видео 1, 2, 3, 5, 10
yt-dlp -I 1:3,5,10 "https://www.youtube.com/playlist?list=PLxxxxxx"
С красивой структурой файлов
yt-dlp -o "%(playlist_index)s - %(title)s.%(ext)s" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Результат:
01 - Введение.mp4
02 - Основы.mp4
03 - Практика.mp4
По папкам по авторам
yt-dlp -o "%(uploader)s/%(playlist_index)s - %(title)s.%(ext)s" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Результат:
Иван Петров/
├─ 01 - Видео 1.mp4
└─ 02 - Видео 2.mp4
Плейлист с подписями на русском
yt-dlp --write-auto-subs --sub-langs ru \
-o "%(playlist_index)s - %(title)s.%(ext)s" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Каждое видео будет иметь файл .ru.vtt с русскими субтитрами.
Пример 4: Скачать видео канала (все видео от автора)
Сценарий: Вы подписаны на канал и хотите архивировать все видео.
Скачать все видео канала
yt-dlp "https://www.youtube.com/@username"
или
yt-dlp ""
yt-dlp загрузит ВСЕ видео с канала (это может быть долго!).
Скачать только последние N видео
# Только последние 50 видео
yt-dlp -I 1:50 "https://www.youtube.com/@username"
# Последние 20 видео (от новых к старым)
yt-dlp -I :20 "https://www.youtube.com/@username"
С архивированием (не скачивать дважды)
# Первый раз:
yt-dlp --download-archive downloaded.txt \
-o "%(title)s [%(id)s].%(ext)s" \
"https://www.youtube.com/@username"
# Каждый следующий раз (новые видео загрузятся автоматически):
yt-dlp --download-archive downloaded.txt \
-o "%(title)s [%(id)s].%(ext)s" \
"https://www.youtube.com/@username"
Файл downloaded.txt будет содержать ID скачанных видео. При повторном запуске они пропустятся.
Пример 5: Скачать видео с определенными субтитрами
Сценарий: Видео на английском, но вам нужны русские субтитры, или автоматические субтитры для дальнейшей обработки.
Видеть доступные субтитры
yt-dlp --list-subs "https://www.youtube.com/watch?v=xxxxx"
Вывод:
Available subtitles for xxxxx:
Language Name Formats
en English vtt, ttml, srv1, srv2, srv3, json3
ru Russian vtt, ttml, srv1, srv2, srv3, json3
de German vtt, ttml, srv1, srv2, srv3, json3
auto English (auto-generated) vtt, ttml, srv1, srv2, srv3, json3
Скачать видео с русскими субтитрами
yt-dlp --write-subs --sub-langs ru \
"https://www.youtube.com/watch?v=xxxxx"
Скачается видео + файл видео.ru.vtt с русскими субтитрами.
Скачать автоматические субтитры (если нет созданных)
yt-dlp --write-auto-subs --sub-langs ru \
"https://www.youtube.com/watch?v=xxxxx"
Скачать субтитры нескольких языков
yt-dlp --write-subs --sub-langs ru,en,de \
"https://www.youtube.com/watch?v=xxxxx"
Результат:
видео.mp4
видео.ru.vtt
видео.en.vtt
видео.de.vtt
Скачать все доступные субтитры
yt-dlp --write-subs --sub-langs all \
"https://www.youtube.com/watch?v=xxxxx"
Изменить формат субтитров
# VTT формат (по умолчанию)
yt-dlp --write-subs --sub-format vtt "https://..."
# SRT формат (более старый, но универсальный)
yt-dlp --write-subs --sub-format srt "https://..."
# JSON формат
yt-dlp --write-subs --sub-format json3 "https://..."
Практический пример: видео с субтитрами и обложкой
yt-dlp --write-subs --sub-langs ru,en \
--write-thumbnail \
--embed-thumbnail \
-o "%(title)s.%(ext)s" \
"https://www.youtube.com/watch?v=xxxxx"
Результат:
Название видео.mp4 (с встроенной обложкой)
Название видео.ru.vtt (русские субтитры)
Название видео.en.vtt (английские субтитры)
Пример 6: Скачать видео с метаданными и обложкой
Сценарий: Вы хотите сохранить не только видео, но и всю информацию о нем (описание, обложка, дата публикации).
Все метаданные
yt-dlp --write-info-json \
--write-description \
--write-thumbnail \
"https://www.youtube.com/watch?v=xxxxx"
Результат:
видео.mp4 (само видео)
видео.info.json (метаданные в JSON)
видео.description (описание)
видео.jpg (обложка)
Встроить обложку в видеофайл
yt-dlp --write-thumbnail \
--embed-thumbnail \
"https://www.youtube.com/watch?v=xxxxx"
Обложка будет встроена в MP4 файл, и плеер покажет её как превью.
Практический пример: архивирование видео
yt-dlp \
--write-info-json \
--write-description \
--write-thumbnail \
--embed-thumbnail \
--write-subs --sub-langs ru,en \
-o "%(upload_date>%Y-%m-%d)s - %(title)s.%(ext)s" \
"https://www.youtube.com/watch?v=xxxxx"
Результат:
2024-01-15 - Название видео.mp4
2024-01-15 - Название видео.info.json
2024-01-15 - Название видео.description
2024-01-15 - Название видео.jpg
2024-01-15 - Название видео.ru.vtt
2024-01-15 - Название видео.en.vtt
Пример 7: Скачать видео с фильтрацией по продолжительности или дате
Сценарий: В плейлисте тысячи видео, вы хотите скачать только видео длиннее 30 минут или загруженные в последний месяц.
Фильтр по продолжительности
# Только видео длиннее 30 минут (1800 секунд)
yt-dlp --match-filters "duration>1800" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
# Видео короче 10 минут
yt-dlp --match-filters "duration<600" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
# Видео между 5 и 30 минутами
yt-dlp --match-filters "duration>300 & duration<1800" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Фильтр по дате загрузки
# Видео, загруженные после 1 января 2024
yt-dlp --dateafter 20240101 \
"https://www.youtube.com/playlist?list=PLxxxxxx"
# Видео последних 7 дней
yt-dlp --dateafter "today-7days" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
# Видео конкретного дня
yt-dlp --date 20240115 \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Фильтр по количеству лайков
# Только популярные видео (более 10000 лайков)
yt-dlp --match-filters "like_count>10000" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
# Видео с более чем 1000 комментариев
yt-dlp --match-filters "comment_count>1000" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Исключить видео
# Скачать всё, кроме лайв-трансляций
yt-dlp --match-filters "!is_live" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
# Скачать видео, которые НЕ премьеры
yt-dlp --match-filters "!was_live" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Комбинирование фильтров
# Видео после 1 января, длиннее 10 минут, с более чем 100 лайков
yt-dlp --dateafter 20240101 \
--match-filters "duration>600 & like_count>100" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Пример 8: Скачать видео с ограничением скорости (не грузить интернет)
Сценарий: Вы хотите скачивать видео в фоне, но не перегружать интернет для других приложений.
Базовое ограничение скорости
# Максимум 1 МБ/сек
yt-dlp -r 1M "https://www.youtube.com/watch?v=xxxxx"
# Максимум 500 КБ/сек
yt-dlp -r 500K "https://www.youtube.com/watch?v=xxxxx"
С параллельной загрузкой фрагментов
YouTube передает видео в виде фрагментов (chunks). Вы можете загружать несколько одновременно:
# Загружать 3 фрагмента одновременно, макс 2 МБ/сек
yt-dlp -N 3 -r 2M "https://www.youtube.com/watch?v=xxxxx"
# 5 фрагментов, макс 1 МБ/сек
yt-dlp -N 5 -r 1M "https://www.youtube.com/watch?v=xxxxx"
Пример 9: Скачать видео через прокси/VPN
Сценарий: Видео заблокировано в вашем регионе, нужно использовать VPN или прокси.
Через SOCKS5 прокси
# Если у вас локально работает SOCKS5 на localhost:1080
yt-dlp --proxy socks5://127.0.0.1:1080 \
"https://www.youtube.com/watch?v=xxxxx"
# С логином и паролем
yt-dlp --proxy socks5://user:password@proxy.example.com:1080 \
"https://www.youtube.com/watch?v=xxxxx"
Через HTTP прокси
yt-dlp --proxy http://proxy.example.com:8080 \
"https://www.youtube.com/watch?v=xxxxx"
Принудительно IPv6 или IPv4
# Только IPv6
yt-dlp -6 "https://www.youtube.com/watch?v=xxxxx"
# Только IPv4
yt-dlp -4 "https://www.youtube.com/watch?v=xxxxx"
Практический пример: через Tor
Если у вас запущен Tor браузер или Tor daemon на localhost:9050:
yt-dlp --proxy socks5://127.0.0.1:9050 \
"https://www.youtube.com/watch?v=xxxxx"
Пример 10: Полный конфиг для удобного использования
Сценарий: Вы часто скачиваете видео с YouTube и хотите автоматизировать процесс.
Создайте файл yt-dlp.conf
# ~/.config/yt-dlp/config
# Формат: лучшее видео + лучшее аудио в MP4
-f bestvideo+bestaudio/best
--merge-output-format mp4
# Название файла с датой загрузки
-o "%(upload_date>%Y-%m-%d)s - %(title)s.%(ext)s"
# Метаданные
--write-info-json
--write-description
--write-thumbnail
--embed-thumbnail
# Подписи на русском и английском
--write-auto-subs
--sub-langs ru,en
# Не перезаписывать существующие файлы
-w
# Архив скачанных видео
--download-archive archive.txt
# Прогресс бар
--progress
# Прекратить при первой ошибке в плейлисте (чтобы не висло)
--no-abort-on-error
Теперь просто используйте:
# Скачать видео (все параметры из конфига)
yt-dlp "https://www.youtube.com/watch?v=xxxxx"
# Скачать плейлист (автоматически с метаданными, подписями и архивированием)
yt-dlp "https://www.youtube.com/playlist?list=PLxxxxxx"
# Переопределить параметр конфига при необходимости
yt-dlp -f 720/best "https://www.youtube.com/watch?v=xxxxx"
Расположение конфига
На разных системах конфиг кладется в разные места:
Система
Путь
Linux/BSD
~/.config/yt-dlp/config или /etc/yt-dlp/config
macOS
~/.config/yt-dlp/config
Windows
%APPDATA%\yt-dlp\config.txt
Текущая папка
./yt-dlp.conf
Пример 11: Скачать только часть видео (рубрики/главы)
Сценарий: Видео состоит из нескольких глав (например, лекция с несколькими темами), вы хотите скачать только нужную часть.
Видеть доступные главы
yt-dlp -O "%(chapters)s" "https://www.youtube.com/watch?v=xxxxx"
или через JSON:
yt-dlp -j "https://www.youtube.com/watch?v=xxxxx" | jq '.chapters'
Скачать только одну главу
# Скачать главу "Введение"
yt-dlp --download-sections "Введение" \
"https://www.youtube.com/watch?v=xxxxx"
# Скачать главу "Практика" (если есть)
yt-dlp --download-sections "Практика" \
"https://www.youtube.com/watch?v=xxxxx"
Скачать по времени (временной диапазон)
# От 1:30 до 5:00 минут
yt-dlp --download-sections "*1:30-5:00" \
"https://www.youtube.com/watch?v=xxxxx"
# Первые 10 минут
yt-dlp --download-sections "*0-10:00" \
"https://www.youtube.com/watch?v=xxxxx"
# От 5 минуты до конца
yt-dlp --download-sections "*5:00-inf" \
"https://www.youtube.com/watch?v=xxxxx"
Несколько секций
# Скачать главы "Введение" и "Основы"
yt-dlp --download-sections "Введение" \
--download-sections "Основы" \
"https://www.youtube.com/watch?v=xxxxx"
# Скачать три временных отрезка
yt-dlp --download-sections "*0-10:00" \
--download-sections "*20:00-30:00" \
--download-sections "*40:00-inf" \
"https://www.youtube.com/watch?v=xxxxx"
Требует ffmpeg для работы!
Пример 12: Скачивание лайв-трансляций
Сценарий: Вам нужно скачать запись лайв-трансляции или начать скачивание во время трансляции.
Скачать завершенную трансляцию
# Просто как обычное видео
yt-dlp "https://www.youtube.com/watch?v=xxxxx"
YouTube сохраняет лайв-трансляции как обычные видео после завершения.
Дождаться начала трансляции и скачать
# Ждать 120 секунд между попытками, максимум 30 минут (1800 сек)
yt-dlp --wait-for-video 120-1800 \
"https://www.youtube.com/watch?v=xxxxx"
Как это работает:
yt-dlp проверяет доступность видео
Если видео ещё недоступно, ждет 120 секунд
Пытается снова
Максимум ждет до 1800 секунд (30 минут)
Как только видео доступно, начинает скачивание
Скачивать с начала трансляции (если возможно)
# Для некоторых сайтов (YouTube, Twitch) можно скачать с начала
yt-dlp --live-from-start "https://www.youtube.com/watch?v=xxxxx"
Пример 13: Скачать видео и не скачивать дважды
Сценарий: У вас есть папка с видео, вы хотите добавить новые видео из плейлиста, но не скачивать старые.
Использование архива
# Первый раз: скачать плейлист и записать ID в archive.txt
yt-dlp --download-archive archive.txt \
-o "%(playlist_index)s - %(title)s.%(ext)s" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Файл archive.txt будет содержать:
youtube dQw4w9WgXcQ
youtube jNQXAC9IVRw
youtube xxxxx
При повторном запуске
# Запустите ту же команду
yt-dlp --download-archive archive.txt \
-o "%(playlist_index)s - %(title)s.%(ext)s" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
yt-dlp:
Проверит archive.txt
Пропустит уже загруженные видео
Скачает только новые видео
Добавит их ID в archive.txt
Остановиться при обнаружении скачанного видео
# Полезно, если видео в плейлисте в хронологическом порядке
yt-dlp --download-archive archive.txt \
--break-on-existing \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Когда yt-dlp обнаружит видео, которое уже в archive.txt, он остановится (не будет проверять остальные видео).
Пример 14: Скачать видео и конвертировать в другой формат
Сценарий: YouTube отдает видео в контейнере WebM или MP4, а вам нужен MKV для Plex или другого медиа-сервера.
Просто конвертировать контейнер (быстро)
# WebM или MP4 → MP4 (переупаковка без переконкодирования)
yt-dlp --remux-video mp4 \
"https://www.youtube.com/watch?v=xxxxx"
# WebM или MP4 → MKV
yt-dlp --remux-video mkv \
"https://www.youtube.com/watch?v=xxxxx"
Remux очень быстро, потому что просто переупаковывает видео без переконкодирования.
Переконкодировать видео в другой кодек (медленно)
# Переконкодировать в H.264 (совместимость с отыми плеерами)
yt-dlp --recode-video mp4 \
"https://www.youtube.com/watch?v=xxxxx"
# Переконкодировать в H.265/HEVC (меньший размер файла)
yt-dlp --recode-video mkv \
-f "bestvideo[vcodec^=h265]+bestaudio" \
"https://www.youtube.com/watch?v=xxxxx"
Практический пример: для Plex медиа-сервера
yt-dlp \
--remux-video mkv \
--merge-output-format mkv \
-f "bestvideo+bestaudio/best" \
-o "%(title)s [%(id)s].%(ext)s" \
"https://www.youtube.com/watch?v=xxxxx"
Пример 15: Скачать видео со скрытым плейлистом (в комментариях)
Сценарий: Автор опубликовал ссылки на другие видео в описании или комментариях, и вы хотите скачать их все.
Из описания видео
# Получить описание видео
yt-dlp -O "%(description)s" "https://www.youtube.com/watch?v=xxxxx"
Затем обработайте вывод и найдите ссылки на видео, создайте файл urls.txt и скачайте:
yt-dlp -a urls.txt
Из комментариев (если доступны)
# Скачать информацию о видео с комментариями
yt-dlp --write-comments \
-j "https://www.youtube.com/watch?v=xxxxx" > video_info.json
# Обработать JSON и найти ссылки
jq '.comments' video_info.json | grep youtube.com
Часто встречаемые проблемы и решения
Проблема: “ERROR: Unable to decrypt signature”
Причина: yt-dlp не может расшифровать подпись YouTube (требуется JavaScript).
Решение:
# Обновиться на nightly версию
yt-dlp --update-to nightly
# Убедиться, что JavaScript-рантайм установлен
yt-dlp --js-runtimes deno,node
Проблема: “ERROR: ffmpeg not found”
Причина: ffmpeg не установлен или не в PATH.
Решение:
# Linux
sudo apt install ffmpeg
# macOS
brew install ffmpeg
# Fedora
sudo dnf install ffmpeg
# Проверить установку
ffmpeg -version
Проблема: “ERROR: Video unavailable”
Причина: Видео удалено, приватное, или заблокировано в вашем регионе.
Решение:
# Если видео заблокировано в регионе, используйте VPN/прокси
yt-dlp --proxy socks5://127.0.0.1:1080 "https://..."
# Если видео приватное, нужно быть залогиненным (yt-dlp не поддерживает OAuth)
# Попробуйте скачать cookies из браузера
yt-dlp --cookies-from-browser chrome "https://..."
Проблема: “ERROR: This video requires authentication”
Причина: Видео доступно только для залогиненных пользователей.
Решение:
# Использовать cookies браузера
yt-dlp --cookies-from-browser chrome \
"https://www.youtube.com/watch?v=xxxxx"
# Или вручную через .netrc
yt-dlp -n "https://..."
Проблема: “WARNING: No video formats found”
Причина: YouTube может потребовать обновления yt-dlp.
Решение:
yt-dlp --update-to nightly
# Или снова обновиться
yt-dlp -U --update-to nightly
Оптимальные настройки для разных сценариев
Максимальное качество (HD архив)
yt-dlp \
-f "bestvideo[ext=mp4]+bestaudio[ext=m4a]/best" \
--merge-output-format mp4 \
--write-info-json \
--write-description \
--write-thumbnail \
--embed-thumbnail \
-o "%(upload_date>%Y-%m-%d)s - %(title)s.%(ext)s" \
"https://www.youtube.com/watch?v=xxxxx"
Быстрая загрузка (минимальный размер)
yt-dlp \
-f "worst[ext=mp4]" \
-r 2M \
"https://www.youtube.com/watch?v=xxxxx"
Для мобильного устройства
yt-dlp \
-f "360/worst" \
"https://www.youtube.com/watch?v=xxxxx"
Для портативного медиа-плеера (MP3)
yt-dlp \
-x --audio-format mp3 \
-o "%(title)s.%(ext)s" \
"https://www.youtube.com/watch?v=xxxxx"
Архивирование плейлиста (полная информация)
yt-dlp \
-f best \
--download-archive archive.txt \
--write-info-json \
--write-description \
--write-subs --sub-langs all \
--write-thumbnail \
-o "%(playlist_index)s - %(title)s.%(ext)s" \
"https://www.youtube.com/playlist?list=PLxxxxxx"
Заключение
yt-dlp мощно и гибко работает с YouTube. Начните с простых команд:
# 1. Просто скачать видео
yt-dlp "https://..."
# 2. Скачать как аудио
yt-dlp -x --audio-format mp3 "https://..."
# 3. Скачать плейлист
yt-dlp "https://www.youtube.com/playlist?list=..."
# 4. Настроить через конфиг для удобства
# Создайте ~/.config/yt-dlp/config
При необходимости добавляйте параметры для подписей, метаданных, фильтрации и т.д. Главное — регулярно обновляйте yt-dlp, чтобы не было проблем с YouTube.