Генератор команд yt-dlp для Bilibili
Соберите команду yt-dlp для Bilibili, начиная с притворства браузером, которое снимает большинство ошибок 403.
Ошибки 403 и ограничения по качеству
Bilibili отклоняет запросы, которые не похожи на браузерные, — поэтому простая команда часто возвращает 403. В этом наборе притворство включено сразу, потому что в большинстве случаев именно оно и решает дело.
1080p и выше обычно оставляют для авторизованных, иногда платных аккаунтов, так что здесь cookies влияют на качество, а не только на доступ. Многочастные видео появляются как элементы плейлиста.
Bilibili — платформа, где устаревший yt-dlp ломается быстрее всего — сайт перекраивает свой API чаще любой западной платформы, и обновления extractor приезжают в релизы yt-dlp в считаные дни после каждого изменения. Когда загрузка, работавшая в прошлом месяце, начинает падать, сначала обновитесь: yt-dlp -U. Притворство браузером (в этом наборе включено по умолчанию) закрывает «браузероподобные заголовки» в проблеме 403; остальное — обычно отсутствующая или истёкшая сессия.
Многочастные загрузки — привычная для серий структура P1/P2/P3 — приходят элементами плейлиста, поэтому обработка целого плейлиста забирает каждую часть, а номер плейлиста в шаблоне вывода держит части по порядку. Данмаку (прокручивающиеся комментарии) для yt-dlp — дорожка субтитров: --write-subs сохраняет их файлом .ass, и это единственный формат, в котором они существуют. Не нужны — не делайте ничего: без запроса они не подмешиваются.
Интерактивные качества — «долби» и премиум-ступени — существуют только у аккаунтов, владеющих ими, и без cookies такого аккаунта ни один флаг до них не доберётся. Региональный замок — другая стена: некоторые загрузки видны только из материкового Китая, и когда блок исполняется на CDN, а не на странице, прокси внутри региона — единственная дорога. Geo-обход иногда работает для блока на уровне страницы и никогда — для CDN.
Bilibili отдаёт свои высокие качества как DASH с отдельным аудио, так что ffmpeg объединяет, как и для YouTube, — шаг объединения уже встроен в этот набор. Извлечение только звука через -x работает и является самым быстрым способом взять звук из долгой многочастной загрузки. Повторы live после конца трансляции становятся обычным VOD — скачивайте как любое видео; опции live-записи на этом сайте — для трансляции, пока она идёт.