Плагин для yt-dlp, позволяющий скачивать аниме с сайта animevost.org и его зеркал (animevost.am, vost.pw).
Проект включает:
- Плагин для yt-dlp - кастомный экстрактор для animevost.org
- Docker-контейнер - автоматизированное скачивание через Docker Compose
- Скрипты для ручного использования - для Windows и Linux
Плагин поддерживает:
- Скачивание целых сериалов (плейлистов) по URL страницы аниме
- Скачивание отдельных эпизодов
- Автоматическое определение сезонов
- Поддержка качества 480p и 720p
- Сохранение метаданных: название сериала, номер эпизода, год выпуска, тип, жанры, режиссёр, описание, миниатюра
yt-dlp-extensions/
├── yt-dlp/ # Docker-контейнер и конфигурация
│ ├── Dockerfile # Образ с yt-dlp и плагином
│ └── yt-dlp.conf # Конфигурация yt-dlp
├── yt-dlp-animevost/ # Плагин для установки через pip
│ ├── pyproject.toml # Конфигурация пакета
│ └── yt_dlp_plugins/
│ ├── __init__.py
│ └── extractor/
│ └── animevost.py # Основной код плагина
├── docker-compose.yml # Docker Compose конфигурация
├── deployment.yml # Ansible playbook для развертывания
├── download.cmd # Скрипт для ручного скачивания (Windows)
└── README.md
Самый простой способ установки - через pip. Плагин будет автоматически зарегистрирован и готов к использованию:
python -m pip install "yt-dlp-animevost @ git+https://github.com/QuAzI/yt-dlp-extensions.git#subdirectory=yt-dlp-animevost"После установки просто используйте yt-dlp как обычно - плагин будет автоматически загружен для URL animevost.org.
-
Создайте необходимые файлы:
# Список URL для скачивания (по одному URL на строку) touch download.list # История скачанных эпизодов (может быть пустым, но файл обязателен) touch history.list
-
Добавьте URL в
download.list:https://animevost.org/tip/tv/179-one-piece44.html https://animevost.org/tip/tv/385-blazblue-alter-memory.html -
Настройте путь для скачивания в
docker-compose.yml:volumes: - /путь/к/папке/скачивания:/downloads
-
Запустите скачивание:
docker-compose up
-
Автоматический запуск по расписанию (crontab):
crontab -e
Добавьте строку:
42 6,13,18,20,22 * * * cd ~/server/animevost-downloader && docker-compose up
-
Установите yt-dlp (например, в
C:\bin\yt-dlp.exe) -
Скопируйте плагин:
- Создайте папку
C:\bin\ytdlp_plugins\extractor - Скопируйте файл
yt-dlp-animevost\yt_dlp_plugins\extractor\animevost.pyвC:\bin\ytdlp_plugins\extractor\
- Создайте папку
-
Используйте скрипт
download.cmd:download.cmd # Скачать из download.list download.cmd URL # Скачать конкретный URL download.cmd URL номер_эпизода # Скачать с определенного эпизода
-
Установите yt-dlp:
pip install --upgrade yt-dlp
-
Скопируйте плагин:
mkdir -p ~/.local/share/yt-dlp/plugins/extractor cp yt-dlp-animevost/yt_dlp_plugins/extractor/animevost.py ~/.local/share/yt-dlp/plugins/extractor/
-
Используйте yt-dlp:
yt-dlp --download-archive history.list "https://animevost.org/tip/tv/179-one-piece44.html"
Для автоматического развертывания на сервере используйте deployment.yml:
ansible-playbook deployment.ymlPlaybook автоматически:
- Установит Docker
- Скопирует конфигурацию
- Настроит cron для автоматического скачивания
Файлы сохраняются в следующем формате:
/downloads/[Название сериала]/[Название сериала] [Номер эпизода] [ID].mp4
Например:
/downloads/Ван Пис/Ван Пис 1 [2147419615].mp4
- animevost.org
- animevost.am
- vost.pw (v*.vost.pw)
- Файл
history.listобязателен для работы Docker Compose (даже если пустой), иначе будет создана директория вместо файла - Плагин автоматически пропускает уже скачанные эпизоды благодаря
--download-archive