Alors voilà, le 19 Septembre 2020, Deezer a supprimé certaines musiques de l'artiste Freeze Corleone de sa plateforme.

Sans entrer dans le débat de savoir qui a raison ou tort, on s'en fout complètement, je me suis quand même dit que ça m'embêterait si une plateforme venait à supprimer des musiques que j'ai l'habitude d'écouter. La solution est assez simple, il suffit d'avoir les musiques localement sur son téléphone, PC ou Cloud personnel.

Mais pour avoir vos musiques dans un format MP3 (sans DRM) ce n'est pas toujours évident. Pour le coup Amazon est bon élève sur ce terrain et je n'ai trouvé aucun CD qui n'était pas disponible en téléchargement au format MP3. Mais comme ça reste une plateforme qui vend en partie de la donnée, vos fichiers téléchargés ne seront pas vierges pour autant :

Spotify-Downloader : Extrait de amazon.fr
Politique d'Amazon sur les métadonnées de certains albums de musique

Bon en gros un watermark dans vos fichiers pour pouvoir vous identifier si vous les publiez sur le web sans l'autorisation de la maison de disque. Normal hein, faut que tout le monde y trouve son compte. Mais du coup ça vous fait une dépense potentiellement supplémentaire pour acheter une version dématérialisée d'un album que vous pouvez déjà écouter si vous avez un abonnement Spotify, Deezer ou autre. Et c'est donc là qu'intervient Spotify-downloader.

Télécharger de la musique sur YouTube grâce à l'API Spotify

Je vous présente donc aujourd'hui Spotify-Downloader écrit 100% en Python et qui utilise l'API de Spotify pour trouver le son le plus proche de votre recherche et le télécharger sur YouTube.

L'outil est vraiment simple d'utilisation et ajoute toutes les métadonnées pour un rendu tout beau tout propre dans votre librairie finale. Vous avez la possibilité de télécharger une musique seule, une playlist ou un album.

Pour l'installation et l'utilisation de Spotify-Downloader, on va s'en tenir à la documentation officielle, disponible à cette adresse et procéder via l'image Docker de l'outil.

docker pull ritiek/spotify-downloader

Il ne reste plus qu'à lancer l'image avec les bons arguments pour commencer à télécharger des musiques. Voyons le cas ici avec un album.

cd Downloads
docker run --rm -it -v $(pwd):/music ritiek/spotify-downloader -a https://open.spotify.com/album/7zrUnXByeOKHbXY3fyn6vz
docker run --rm -it -v $(pwd):/music ritiek/spotify-downloader -l lmf.txt

Décortiquons cela ensemble :

  • La première ligne sert à se placer dans le dossier de Téléchargements. Par défaut, les fichiers seront téléchargés là où est exécuté l'image Docker.
  • La deuxième ligne sert à lancer l'image et éclater les URL de chaque morceau de l'album (-a) pour pouvoir ensuite les télécharger un par un.
Spotify-downloader : liste des musiques téléchargées
Spotify-downloader : Illustration du fichier texte à la fin de la deuxième étape
  • La troisième ligne permet finalement de lire la liste (-l) et de télécharger tous les morceaux correspondants sur YouTube.
Spotify-downloader : Téléchargement de l'album en cours
Spotify-downloader : Téléchargement de l'album en cours

Une fois le téléchargement terminé, vous vous retrouverez avec votre album téléchargé et chaque morceau aura les bonnes métadonnées :

Spotify-Downloader: Album de musique téléchargé
Spotify-downloader : Album et métadonnées correctes

Bonus : Spytify pour télécharger sur Spotify, pour de vrai

Si vous avez une partition Windows, un abonnement Spotify Premium et un peu de temps, vous pouvez également utiliser le logiciel Spytify qui vous permettra d'enregistrer des sons directement depuis Spotify et non pas en allant chercher une correspondance ailleurs.

Spotify-Downloader: Alternative (Spytify)
Illustation du logiciel Spytify

Le logiciel joue la musique et l'enregistre en même temps au format MP3 et ajoutera les métadonnées à la fin. C'est un peu plus long mais vous serez sûr d'avoir votre fichier à la fin contrairement à d'autres outils comme Spotify-Downloader qui ne pourront pas vous télécharger votre fichier s'il n'existe pas sur YouTube. Il ne vous reste plus qu'à tester et faire votre choix.

Si vous connaissez d'autres outils que les deux que j'ai cité dans ce billet, je suis également preneur.