Перейти к содержимому
yt-dlp

Шпаргалка по yt-dlp

Команды yt-dlp, которые стоит запомнить: выбор качества, извлечение MP3, плейлисты, субтитры, cookies и решения тех ошибок, что встречаются на практике.

Написано по yt-dlp 2026.07.21. Между версиями опции добавляются и переименовываются, поэтому проверьте свою через yt-dlp --version.

Базовые загрузки

Совсем без опций yt-dlp выбирает лучшее сочетание, которое может склеить, и называет файл по заголовку. На удивление часто это и есть нужная команда.

yt-dlp URL

Прежде чем качать что-то большое, стоит посмотреть, что вообще предлагают. Это выводит таблицу форматов и завершается, ничего не скачивая.

yt-dlp -F URL

Левый столбец этой таблицы — идентификатор формата, который затем можно запросить напрямую. Два идентификатора через + означают «скачать оба и склеить».

yt-dlp -f 137+140 URL

Качество и выбор формата

Жёстко прописанные идентификаторы форматов ломаются, как только сайт меняет набор кодировок. Выражение-селектор — долговечный вариант: запросите нужные свойства и дайте yt-dlp самому найти лучшее совпадение.

yt-dlp -f "bv*[height<=1080]+ba/b[height<=1080]" URL

Читается так: лучший видеопоток высотой не больше 1080 плюс лучший звук, а если такой пары нет — лучший одиночный файл высотой не больше 1080. Именно этот запасной вариант после косой черты не даёт команде упасть на сайтах, где есть только прогрессивные потоки.

Склейка двух потоков даёт контейнер, который yt-dlp должен выбрать. MP4 играет везде; MKV принимает что угодно, и это важно, как только появляются субтитры и главы.

yt-dlp -f "bv*+ba" --merge-output-format mp4 URL

Чтобы выразить предпочтение, а не жёсткое ограничение, сортируйте, а не фильтруйте. Так предпочтение отдаётся 1080p и MP4, но что-нибудь скачается и когда нет ни того, ни другого.

yt-dlp -S "res:1080,ext:mp4" URL

Звук и MP3

Для извлечения звука нужен ffmpeg — это самая частая причина, по которой команда ниже падает на свежей установке.

yt-dlp -x --audio-format mp3 URL

Обложка и теги добавляются ещё двумя флагами и превращают результат в нечто пригодное для музыкальной библиотеки, а не в папку безымянных файлов.

yt-dlp -x --audio-format mp3 --audio-quality 0 --embed-thumbnail --embed-metadata URL

--audio-quality 0 — это переменный битрейт на лучшей настройке, а не «нулевое качество». Если нужен фиксированный битрейт, укажите его: --audio-quality 320K.

Если исходник уже в AAC или Opus, преобразование в MP3 перекодирует его и теряет качество впустую. Сохранить оригинал и быстрее, и лучше.

yt-dlp -x --audio-format best URL

Субтитры

Встроенные субтитры путешествуют вместе с файлом; отдельные .srt проще править и передавать дальше.

yt-dlp --embed-subs --sub-langs en URL
yt-dlp --write-subs --sub-langs en,vi --convert-subs srt URL

Автоматические субтитры — отдельный переключатель. Без него видео без человеческих субтитров не даст вообще ничего и никакой ошибки.

yt-dlp --write-auto-subs --sub-langs en --convert-subs srt --skip-download URL

Плейлисты и каналы

Ссылка YouTube часто относится сразу и к видео, и к плейлисту, и yt-dlp приходится угадывать, что вы имели в виду. Скажите явно.

yt-dlp --no-playlist URL
yt-dlp --yes-playlist URL

Для чего-то длинного файл архива важнее любой другой опции здесь: он записывает уже скачанное, поэтому повторный запуск продолжает с места остановки, а не начинает заново.

yt-dlp --yes-playlist -i \
  --download-archive archive.txt \
  -o "%(playlist_index)02d - %(title)s.%(ext)s" \
  URL

Вместе с -i одно видео, заблокированное по региону или удалённое, больше не обрывает остальные двести. Чтобы взять часть, а не всё, -I принимает диапазоны и списки: -I 1:10, -I "1,3,7-10".

Фрагменты, главы и спонсорские вставки

Можно скачать часть видео вместо целого. Звёздочка в начале означает временную метку, а не название главы, и кавычки обязательны — bash раскроет голую * по именам ваших файлов.

yt-dlp --download-sections "*00:01:30-00:03:00" URL

SponsorBlock использует метки, присланные сообществом, чтобы вырезать сегменты целиком или оставить их главами, которые вы пропустите сами.

yt-dlp --sponsorblock-remove default URL
yt-dlp --sponsorblock-mark all --embed-chapters URL

Входы, cookie и проверки на бота

Приватному контенту, контенту с возрастным ограничением и контенту только для подписчиков нужна ваша сессия. Читать её прямо из браузера — путь с наименьшим числом ошибок.

yt-dlp --cookies-from-browser chrome URL
yt-dlp --cookies-from-browser "firefox:Profile 1" URL

Сначала закройте браузер: Chrome и Edge держат базу cookie заблокированной, пока запущены, а сообщение об ошибке об этом не говорит.

Когда сайт начинает возвращать 403 или просит подтвердить, что вы не бот, обычно помогает сделать запрос похожим на настоящий браузер.

yt-dlp --impersonate chrome URL

Имена файлов и папки

Шаблон вывода управляет и тем, и другим. Косая черта создаёт каталог, так что одним шаблоном можно разложить целый архив.

yt-dlp -o "%(uploader)s/%(upload_date>%Y-%m-%d)s - %(title)s.%(ext)s" URL

В заголовках регулярно встречаются символы, которые не принимают некоторые файловые системы. --restrict-filenames сводит всё к простому ASCII, и это оправдано для всего, что будет переноситься между машинами.

В файле .bat под Windows каждый % надо удваивать — %%(title)s — иначе интерпретатор пакетных файлов съест шаблон раньше, чем его увидит yt-dlp. Генератор делает это за вас, когда вы скачиваете .bat.

Ошибки, с которыми вы действительно столкнётесь

ffmpeg not found

Всё, что склеивает, преобразует, встраивает или режет, требует ffmpeg в PATH. Установите его и проверьте через ffmpeg -version.

Sign in to confirm you are not a bot

Сначала попробуйте --impersonate chrome, затем --cookies-from-browser. Если не помогло ни то, ни другое, обновите yt-dlp — именно эта проверка меняется часто, и исправление обычно выходит в релизе за считаные дни.

Unable to extract player response

Почти всегда это устаревший yt-dlp. Обновите его прежде, чем менять что-либо ещё: yt-dlp -U или через пакетный менеджер, если ставили так.

Requested format is not available

Ваш селектор ничему не соответствовал. Запустите -F, чтобы увидеть, что есть, и предпочитайте сортировку (-S) жёсткому фильтру, чтобы запасной вариант был всегда.

HTTP Error 403

Ссылка была подписана для другой сессии или другого региона. Перезапустите со свежими cookie, добавьте --impersonate chrome или попробуйте --geo-bypass.

Держать yt-dlp в актуальном состоянии

Обновлением чинится больше сообщённых ошибок, чем любым флагом. Если вы ставили отдельный исполняемый файл:

yt-dlp -U

Если ставили через пакетный менеджер, обновляйте тем же способом — -U откажется, и правильно сделает.

Частые вопросы

Как исправить «Sign in to confirm you are not a bot»?
Сначала попробуйте --impersonate chrome, затем --cookies-from-browser chrome, чтобы использовать свою сессию. Если не помогло — обновите yt-dlp: эта проверка меняется часто, и исправления обычно выходят в течение нескольких дней.
Что значит «Unable to extract player response»?
Сайт что-то изменил, а ваш yt-dlp старше исправления. Обновите его прежде, чем менять что-то ещё: эта ошибка почти никогда не решается флагом.
Пишет ffmpeg not found.
Объединение, конвертация, встраивание и вырезание требуют ffmpeg в PATH. Установите его и проверьте через ffmpeg -version.
Как часто обновлять yt-dlp?
Всякий раз, когда что-то перестаёт работать, а в остальном — раз в несколько недель. Сайты меняются постоянно, и большая часть поломок быстро исправляется в проекте.
В чём разница между yt-dlp и youtube-dl?
yt-dlp — поддерживаемый форк с гораздо большим числом extractor и возможностей: SponsorBlock, скачивание фрагментов, притворство браузером, параллельные fragment. Названия опций youtube-dl он сохранил, поэтому простые команды работают в обоих.