---
title: Spotizerr
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, downloads, spotify, music, python, yt-dlp]
confidence: medium
contested: false
sources:
  - https://selfh.st/apps/?tag=downloads
  - https://github.com/spotizerr/spotizerr
---

# 🟢 Spotizerr
> Téléchargeur de playlists et morceaux Spotify : récupère les métadonnées via l'API Spotify, puis télécharge les fichiers audio depuis YouTube Music via yt-dlp, avec taggage automatique.

| Métadonnée | Valeur |
| :--- | :--- |
| **Site web** | https://github.com/spotizerr/spotizerr |
| **GitHub** | https://github.com/spotizerr/spotizerr |
| **License** | MIT |
| **Langage** | Python (FastAPI) |
| **Étoiles** | 6 ⭐ |
| **Dernière MAJ** | 2025 |
| **Catégorie** | [[cat-downloads]] |

## Description

Spotizerr fait partie de la famille des **« Spotify → YouTube downloader »**, comme **spotDL** (le plus connu en CLI) ou [[app-yubal]] (focus YT Music). Son créneau : offrir une **API REST simple** + une UI web minimale pour automatiser la résolution de playlists Spotify en fichiers audio locaux, **sans compte YouTube**.

Le flow : on colle une URL de playlist/album/track Spotify → Spotizerr récupère la liste des titres via l'API publique Spotify (gratuit, pas d'auth pour la lecture) → pour chaque titre, il construit une recherche YouTube Music ciblée (artiste + titre) → délègue à **yt-dlp** pour le téléchargement audio → applique les tags ID3 (titre, artiste, album, n° de piste, année, cover) → range proprement.

Différenciation vs spotDL : spotDL est une CLI puissante mais sans UI, et demande souvent un setup Python/venv. Spotizerr mise sur le **« tout en un conteneur »** et une **API REST** (parfaite pour scripter, intégrer à [[app-navidrome]] via script d'import, ou déclencher depuis [[app-home-assistant]]). L'UI est volontairement spartiate.

**⚠️ Limitations honnêtes** : le matching Spotify → YouTube n'est pas parfait (remaster, live, version acoustique = mismatch possible). La qualité dépend de ce qui est disponible sur YouTube. Pour du **vrai CD-quality**, il faut passer par des services payants (Qobuz, Tidal via leur API) ou des outils comme [[app-music-grabber]] couplé à Lidarr.

**⚠️ Avertissement légal** : contourner les DRM d'un service de streaming pour télécharger sans abonnement est **illégal** dans la plupart des juridictions (DMCA, EU Copyright Directive). À utiliser uniquement sur du contenu sous licence libre, ou vos propres uploads, ou avec un abonnement actif (certains outils).

## Installation

### Docker Compose (recommandé)

```yaml
# docker-compose.yml
services:
  spotizerr:
    image: ghcr.io/spotizerr/spotizerr:latest
    container_name: spotizerr
    restart: unless-stopped
    ports:
      - "8083:8083"
    environment:
      - TZ=Europe/Paris
      - SPOTIFY_CLIENT_ID=***         # pour métadonnées enrichies
      - SPOTIFY_CLIENT_SECRET=***
      - AUDIO_FORMAT=mp3
      - AUDIO_QUALITY=320
      - DOWNLOAD_DIR=/downloads
    volumes:
      - ./config:/app/config
      - /data/music/spotizerr:/downloads
```

### Installation manuelle

```bash
git clone https://github.com/spotizerr/spotizerr
cd spotizerr
pip install -r requirements.txt  # nécessite ffmpeg système
cp .env.example .env
python -m spotizerr
# API sur :8083, docs sur /docs (Swagger auto)
```

## Configuration

- **Spotify API** : client ID + secret (gratuit, dashboard developer.spotify.com) pour métadonnées enrichies, facultatif en lecture publique.
- **Format audio** : `mp3`, `flac`, `opus`, `m4a` — `mp3` 320 kbps est le défaut le plus compatible.
- **Quality preference** : `best` (yt-dlp default) ou forcer un bitrate.
- **Playlist sync** : une URL playlist peut être monitorée, re-téléchargée si de nouveaux tracks apparaissent.
- **Hooks** : script post-download, webhook optionnel.
- **API REST** : `POST /download` avec JSON `{url, format}` pour scripter.

## Alternatives

### Open Source

- **spotDL** (spotify-downloader) — la référence CLI, plus mature, plus de fonctionnalités (sync playlists, métadonnées complètes), pas d'UI web.
- [[app-yubal]] — équivalent côté YouTube Music (sans dépendance Spotify API).
- [[app-music-grabber]] — focus Lidarr, plus orienté backfill.
- [[app-jellyfin]] + **Jellyfin Spotify plugin** — streaming sans download.
- **SpotTube** (Kotlin, desktop) — UX client, pas self-hosted serveur.

### Propriétaires (ce que Spotizerr remplace)

- **Spotify Premium offline** —只能在客户端读，无法在别处读。
- **TuneMyMusic / Soundiiz** — transfert entre services, pas download local.
- **Tidal HiFi** — qualité supérieure (FLAC vrai), abonnement cher.

## Sécurité

- **Bus factor 1, projet très jeune** (< 10 ⭐, ~1 an) : **risque d'abandon élevé**, ne pas miser son installation musicale dessus en prod.
- **Spotify API credentials** : client secret dans `./config`, à chiffrer. Ne pas commit.
- **Cookies** : si vous passez par votre compte Spotify (auth), ils donnent accès à votre compte.
- **Légalité** : vérifier votre juridiction, en UE la directive Copyright 2019/790 permet le téléchargement pour usage privé dans certains cas limités (recherche).
- **Pas d'auth par défaut sur l'API** : ne pas exposer `:8083` sur Internet, l'API peut déclencher des downloads arbitraires.
- **yt-dlp dépendance** : sensible aux changements YouTube, peut casser du jour au lendemain (rare mais historique).

## Ressources

- Repository : https://github.com/spotizerr/spotizerr
- spotDL (alternative mature) : https://github.com/spotdl/spotify-downloader
- yt-dlp : https://github.com/yt-dlp/yt-dlp
- Spotify API dashboard : https://developer.spotify.com/dashboard

## Pages Liées

- [[cat-downloads]] — catégorie parente
- [[app-yubal]] — alternative YouTube Music
- [[app-music-grabber]] — alternative Lidarr
- [[app-lidarr]] — gestion bibliothèque
- [[app-navidrome]] — serveur streaming
- [[app-traefik]] — reverse proxy
- [[app-authentik]] — SSO
- [[recettes-docker-compose]] — templates
- [[securisation-home-lab]] — bonnes pratiques
