SkillAgentSearch skills...

ZvukDownloader

No description available

Install / Use

/learn @Basil-AS/ZvukDownloader
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

SberZvuk Script

Скрипт для скачивания музыки с SberZvuk: короткие команды, FLAC/MP3, метаданные, обложки, тексты (встроенные и рядом), субтитры для VLC.

Установка

pip install -r requirements.txt

Создайте config.json с токеном:

{
    "auth_token": "YOUR_TOKEN"
}

Где взять токен:

  • Откройте https://zvuk.com → войдите в аккаунт
  • В DevTools → Application → Cookies → https://zvuk.com найдите cookie auth — это и есть токен
  • Либо проверьте https://zvuk.com/api/v2/tiny/profile в браузере (активная сессия)
  • Вставьте значение в config.json или передавайте через --token

Быстрый старт

  • Профиль: python zvuk_multibot.py p
  • Проверка качеств: python zvuk_multibot.py chk <track_id>
  • Инфо о треке: python zvuk_multibot.py ti <track_id>
  • Скачать трек: python zvuk_multibot.py dl <track_id> -q f|h|m
  • Скачать альбом: python zvuk_multibot.py dlr <release_id> -q f|h|m
  • Скачать артиста: python zvuk_multibot.py dla <artist_id> -q f|h|m -l 1000
  • Текст песни: python zvuk_multibot.py txt <track_id>

Качества: f = FLAC, h = MP3 320, m = MP3 128.

Подсказки по качеству/доступности:

  • Если выбранное качество недоступно, утилита сама подберёт лучшее доступное
  • Для альбома используйте проверку: python zvuk_multibot.py chkr <release_id>

Флаги

  • -t, --token — токен (если не в config.json)
  • -c, --config — путь к конфигу (по умолчанию config.json)
  • -v, --verbose — подробный лог
  • -q, --quality — качество: f|h|m / flac|high|mid
  • -f, --filename — имя файла для одного трека
  • -nm, --no-metadata — не встраивать метаданные/текст/обложку
  • -nc, --no-cover — не скачивать обложку
  • -sl, --save-lyrics — сохранить текст рядом (.lrc при таймкодах, иначе .txt)
  • -ss, --save-subtitles — сохранить .srt (конвертация из LRC) для VLC
  • -l, --limit — лимит релизов/результатов (для art, dla)
  • -s, --skip-singles — пропускать синглы/EP при dla

Артист:

  • Список релизов: python zvuk_multibot.py art <artist_id> -l 100
  • Детали артиста и релизов: python zvuk_multibot.py ainfo <artist_id> -l 50
  • Скачать все альбомы: python zvuk_multibot.py dla <artist_id> -q f -l 1000 -s

Что именно делает утилита

  • Скачивает треки и альбомы в FLAC/MP3
  • Встраивает метаданные: название, исполнитель, альбом, номер трека, жанр, обложка
  • Встраивает тексты песен (если доступны):
    • MP3: SYLT (синхронизированный текст, язык rus) + дублирующий USLT (в desc='LRC' кладётся исходный LRC для видимости в редакторах)
    • FLAC: LYRICS — при наличии LRC пишем LRC целиком; если таймкодов нет — обычный текст
  • Сохраняет рядом .lrc и/или .srt при флагах -sl и -ss
  • Умеет проверять доступные качества и рекомендовать лучшее

Кейсы использования

1) Максимально просто: скачать трек в FLAC

python zvuk_multibot.py dl 123456789 -q f

2) Скачать альбом в FLAC и сохранить текст рядом

python zvuk_multibot.py dlr 987654321 -q f -sl

3) Скачать всего артиста (только альбомы, без синглов), FLAC + тексты и субтитры

python zvuk_multibot.py dla 111222 -q f -s -l 1000 -sl -ss

4) Быстрый тест (меньше трафика):

python zvuk_multibot.py dl 123456789 -q m -nm -nc

Плееры и тексты

  • AIMP: поддерживает встроенные тексты; для MP3 используется SYLT (с таймкодами). Дублирующий USLT (desc='LRC') виден в редакторах тегов.
  • VLC: для отображения текстов нужен файл субтитров .srt и «видео»/визуализация.

Как включить тексты в VLC:

  1. Включите визуализацию, чтобы у VLC было «видео»:
    • Аудио → Визуализация → Спектр (или другая).
    • Без картинки/видео VLC не показывает субтитры вовсе.
  2. Запустите песню.
  3. Подключите субтитры с текстом:
    • Субтитры → Добавить файл субтитров → выберите свой .srt.
  4. Проверьте, что они активны:
    • Субтитры → Дорожка → выберите вашу дорожку.

Подготовить .srt просто: добавьте флаг -ss-sl, если нужен .lrc).

Структура скачиваний

  • Для альбомов создаются папки: NN. [YYYY] Название [LP|EP|SINGLE] (нумерация в хронологическом порядке выхода)
  • Файлы внутри: 01. Исполнитель - Название.mp3/flac
  • Рядом (если флаги): Название.lrc, Название.srt, Название.txt

Советы

  • Если авторизация не проходит — проверьте config.json
  • Для быстрого теста используйте -q m -nm -nc
  • .srt создаётся только если исходный текст содержит таймкоды (LRC)

Требования

  • Python 3.8+
  • aiohttp, mutagen, pillow

Лицензия

MIT (личное использование).

Related Skills

View on GitHub
GitHub Stars7
CategoryDevelopment
Updated1mo ago
Forks1

Languages

Python

Security Score

65/100

Audited on Feb 13, 2026

No findings