
В посте про yt-dlp я писал, что для скачивания видео хватает одной команды в терминале. Это правда, но только пока вы сидите за своим компьютером.
Как только нужно скачать что-то с телефона, планшета или с чужого ноутбука — открывается знакомая картина: ищем вкладку, копируем ссылку, возвращаемся в терминал. cobalt.tools и онлайн-сервисы решают эту проблему, но как-то через раз.
ReClip — это та же идея, только поднятая у себя.
Что это такое#
Веб-интерфейс над yt-dlp. Вставляешь ссылку — получаешь превью, список доступных разрешений и кнопку «Скачать». MP4 или MP3, на выбор. Поддерживается всё, что умеет yt-dlp, то есть 1000+ сайтов.
Удивительно, что вся серверная часть — это один файл app.py на ~150 строк. Фронтенд — один HTML без фреймворков и без сборки. Никакого npm install.
Почему это не просто ещё одна обёртка#
Три вещи, которые обычно и ломают такие самодельные обёртки, здесь продуманы:
- Массовая загрузка. Можно вставить сразу несколько ссылок, каждая обработается отдельно.
- Дедупликация URL. Один и тот же URL не скачается дважды.
- Обновление
yt-dlpпри старте. И это важно: экстракторыyt-dlpломаются постоянно, особенно на Instagram и Facebook. Обычно лечится обновлением, здесь это происходит само при каждом запуске. Отключается черезRECLIP_NO_UPDATE=1.
Установка#
Понадобится Python 3.8+, yt-dlp и ffmpeg.
apt install ffmpeg && pip install yt-dlp
git clone https://github.com/averygan/reclip.git
cd reclip
./reclip.shСкрипт сам создаст venv, доставит зависимости и поднимет сервер на http://localhost:8899. Порт меняется переменной PORT.
Через Docker#
docker build -t reclip . && docker run -p 8899:8899 reclipИли compose — он уже в репозитории, с именованным томом под загрузки:
services:
reclip:
build: .
image: reclip:latest
container_name: reclip
ports:
- "8899:8899"
volumes:
- reclip-downloads:/app/downloads
restart: unless-stopped
volumes:
reclip-downloads:Внутри контейнера всё то же самое, но yt-dlp обновляется при старте, а отдаёт процесс уже gunicorn с одним воркером и четырьмя потоками. Запускается от непривилегированного пользователя, ffmpeg уже внутри.
Использование#
Здесь всё интуитивно и объяснять нечего:
- Вставить одну или несколько ссылок — хоть через пробел, хоть через запятую
- Выбрать MP4 или MP3
- Нажать Fetch — подтянет превью и список разрешений
- Выбрать качество, если оно есть
- Скачать по одному или всё сразу кнопкой Download All

Скачанное складывается в downloads/, а имя файла берётся из заголовка ролика. Плейлисты тоже обрабатываются — на отдельной вкладке появляется разбор ссылок из плейлиста.
Итог#
Одна из тех вещей, которые проще один раз поставить, чем объяснять людям, зачем для скачивания видео нужен терминал.
У репозитория averygan/reclip уже больше десяти тысяч звёзд и полторы тысячи форков, лицензия MIT. Автор явно делал это для себя — на app.py смотреть одно удовольствие.
Один нюанс: помните про авторские права. Инструмент для личного использования, ответственность на том, кто качает.


