Spotipy et MLP
LāAPI Spotify permet de rĆ©cupĆ©rer des donnĆ©es ou de modifier des playlists depuis lāapplication Spotify.
Dans cette page tu trouveras :
CrƩer et paramƩtrer une app Spotify
Pour crĆ©er une application Spotify, il faut dāabord se connecter Ć son compte spotify, puis se rendre dans le Dashboard de Spotify Developer et se connecter avec un compte Spotify.
Dans le portail de dƩveloppement spotify, tu vas pouvoir crƩer une nouvelle application.
Clique sur le bouton violet « Create app »
Remplis les champs suivants :Ā
- Le nom de ton applicationĀ
- La description de ton applicationĀ
- Et l’encart Redirect URI avec l’adresse http://localhost:9090
Puis en bas de cette page :Ā
- Accepte les conditions d’utilisation
- Et sauvegarde
Maintenant clique sur l’onglet User ManagementĀ
Tu dois t’ajouter comme utilisateur :Ā
- En mettant ton nom (ou pseudo)
- Et ton adresse mail (la même que celle avec laquelle tu as créer ton compte spotify
Nous pouvons laisser cet onglet ouvert, nous aurons besoin des ID de lāApp dans notre code !
PrĆ©paration de l’API spotify sur colab
Ouvre un nouveau projet sur colab et commence par installer la bibliothĆØque Spotipy
Ensuite, on va paramétrer notre API, en lui donnant les informations nécessaires. Tu trouveras sous ce code exemple, où trouver toutes ces informations.
Voici les paramĆØtres dāauthentification :
- scope : permet de dĆ©finir les autorisations de lāapp sur les comptes
- client_id : la clĆ© publique de lāapp
- client_secret : la clƩ privƩe
- redirect_URI : lāadresse quāon a paramĆ©trĆ© plus tĆ“t (lāauthentification demande dāaller sur une adresse web)
Ā
Pour rƩcupƩrer la clƩ client_id et la clƩ client_secret :
Va dans le tableau de developpeur, et clique sur l’onglet Basic Information
- Tu trouveras directement client ID
- Et clique sur View client secret pour avoir la clé secrète
RĆ©cupĆ©ration de donnĆ©es SpotifyĀ
CrĆ©er une playlist sur SpotifyĀ
Pour crĆ©er une playlist, connecte toi Ć Spotify et rends toi sur l’accueil.
Sur la gauche, tu as une catĆ©gorie « BibliothĆØqueĀ Ā»Ā
Si c’est ta premiĆØre playlist tu trouveras ce design avec un bouton te proposant de crĆ©er une playlistĀ
Si tu as déjà des playlists, tu trouveras ce second design, et tu devras cliquer sur le +, puis « créer une playlist »
Le moteur de recherche te propose d’entrer un titre ou un Ć©pisode. Tu peux tout Ć fait entrer le nom d’un artiste directement. Il te proposera sa page de profil, et en dessous, toutes ses chansons. Tu n’as plus qu’Ć ajouter celles que tu souhaites mettre dans ta playlist.
RĆ©cupĆ©rer l’id d’un artiste
Pour rĆ©cupĆ©rer toute la bibliothĆØque d’un artiste, et ainsi pouvoir manipuler les donnĆ©es de ses albums, titres de chansons… tu vas passer par spotify directement.
Si par exemple, je recherche l’artiste AngĆØle dans le moteur de recherche sur spotify, je vais obtenir les meilleurs rĆ©sultats, sa page de profil, ses meilleurs titres Ć©valuĆ©s etc..
Clique sur le rĆ©sultat t’indiquant son nom et enĀ dessous « ArtisteĀ Ā»
Tu vas atterrir sur sa page de profil avec toutes ses informations.
L’ID de l’artiste se trouve dans l’url de sa page :
- C’est la clĆ© de chiffrement que tu trouves aprĆØs le /artist/
RĆ©cupĆ©rer l’id d’une playlist
L’ID de ta playlist se trouve dans l’url de sa page :
- C’est la clĆ© de chiffrement que tu trouves aprĆØs le /playlist/
RĆ©cupĆ©rer l’id de ton compte Spotify
Pour trouver l’ID de ton compte Spotify, clique sur ton avatar, puis sur « compteĀ Ā»
Ensuite clique sur « Modifier le profil »
Et tu trouveras ton ID de ton compte spotify dans l’intitulĆ© « Nom d’utilisateurĀ Ā»Ā
S’authentifier depuis Colab
LāAPI Spotify peut demander une authentification.
- Lorsque tu lances ton code, tu peux avoir cette rƩponse :
- Clique sur le lien que tu vois en surbrillance en rouge dans l’image ci-dessous
Si c’est ta premiĆØre identification :
Tu seras redirigĆ© sur une page te demandant d’autoriser spotify Ć se connecter.
Clique sur le bouton « D’accordĀ Ā»
Ā
Si ce n’est pas ta premiĆØre identification tu n’auras pas cette page. Passe Ć la suite du tuto !
Cela va t’ouvrir une nouvelle fenĆŖtre dans ton navigateur et il te sera spĆ©cifiĆ© que « Ce site est inaccessibleĀ Ā». C’est normal, car nous sommes sur l’environnement local que nous avons configurĆ© dans le redirect_url (http://localhost:9090)
SĆ©lectionne l’URL de cette page comme sur cette image ci-dessous, et copie lĆ
Et colle lĆ dans ton colab, dans l’encart « Enter the URL you were redirecter toĀ Ā»
Puis tape sur la touche EntrƩe
Ton authentification est faite, tu obtiendras maintenant ton rƩsultat en dessous.
Vocabulaire SPotifyĀ
Tracks
Ce sont les pistes audio d’un artiste.Ā
Une chanson = une piste audio
Audio FeaturesĀ
Les AudioFeatures sont les caractĆ©ristiques audio des tracks (pistes musicales), qui permettent de āclasserā les musiques.Ā
Voici le dĆ©tail du tableau que l’on a en rĆ©sultat lorsque l’on convertit les audio features en Dataframe Pandas:
- Danceability (Ć©chelle entre 0 et 1) : Mesure la facilitĆ© de danse d’une piste audio (basĆ©e sur plusieurs Ć©lĆ©ments musicaux dont le tempo, le rythme, ā¦)
- Energy (Ć©chelle entre 0 et 1) : mesure lz perception de lāintensitĆ© et de lāactivitĆ© (les tracks Ć©nergiques sont rapides, bruyantes et āpuissantesā)
- Key : Indique la tonalité de la piste audio
- Loudness (en dB) : reprĆ©sente l’intensitĆ© sonore globale de la pisteĀ
- Mode : Indique si la piste est en mode Majeur(1) ou en mode Mineur(0)
- Speechiness (échelle entre 0 et 1) : détecte la présence de paroles
- Acousticness (Ć©chelle entre 0 et 1) : Mesure l’acousticitĆ© de la piste audio
- Instrumentalness (Ć©chelle entre 0 et 1) : indique la probabilitĆ© que la piste soit principalement instrumentale (sans parole)Ā
- Liveness (Ć©chelle entre 0 et 1) : dĆ©tecte la prĆ©sence dāune audience (un public) lors de l’enregistrementĀ de la piste audio
- Valence (Ć©chelle entre 0 et 1) : mesure de la āpositivitĆ© musicaleā de la piste
- Tempo (BPM : beats par minute) : Indique le tempo estimƩ en battements par minute
- Time_signature (entre 3 et 7) : le nombre de beats dans chaque mesure
- Duration_ms : la durĆ©e totale de la piste en millisecondesĀ
Ā
Ā
Ā
