YouTube Channel Archiver: Парсер каналов и плейлистов с автоматической загрузкой видео

Ссылка на работу
image
Описание Заказчику требовался инструмент для автоматического сбора и скачивания всего видеоконтента с YouTube-каналов или отдельных плейлистов. Задача — извлечь все ссылки на видео (включая пагинацию для каналов с тысячами роликов), отфильтровать по заданным критериям (дата, длительность, название) и скачать видео в высоком качестве с сохранением метаданных (название, описание, дата публикации, субтитры). Решение необходимо для создания архивов образовательного контента, анализа конкурентов, офлайн-просмотра и резервного копирования. Решение • Разработала парсер на Python с использованием yt-dlp для работы с YouTube Data API и прямым парсингом страниц каналов/плейлистов. • Реализовала обход пагинации: автоматический сбор всех видео с канала, обработка плейлистов любой длины. • Настроила фильтрацию контента: по дате публикации, длительности, ключевым словам в названии, количеству просмотров — для выборочного скачивания релевантных видео. • Реализовала загрузку с настройками качества: выбор разрешения, формата, извлечение аудио отдельно, скачивание субтитров и превью. • Добавила сохранение метаданных: экспорт списка видео в CSV/JSON с полями title, url, duration, publish_date, view_count, description. • Обеспечила отказоустойчивость: возобновление прерванной загрузки, пропуск уже скачанных видео, обработка приватных и удалённых роликов, логирование ошибок.