Spotifyのプレイリストを分析したいと思っています。
今回は、分析するために必要になる曲のIDを取得したいと思います。
Spotifyからspotipyを使ってプレイリスト内の曲のIDを取得する
まずは、コードの全体です。
import spotipy from spotipy.oauth2 import SpotifyClientCredentials import pandas as pd client_id='CLIENT_ID' client_secret='CLIENT_SECRET' client_id_and_secret = SpotifyClientCredentials(client_id, client_secret) sp = spotipy.Spotify(client_credentials_manager=client_id_and_secret) user='USER_NAME' playlist_id = '7qKwh074Msa1UMgsvsZeF1' playlist_data = sp.user_playlist(user, playlist_id) tracks = playlist_data['tracks'] items = tracks['items'] for i in range(len(items)): print('---------------') print(i) id = items[i]['track']['album']['id'] print(id)
コードの説明
まず、Spotifyのライブラリである「spotipy」をインポートして、認証します。
読み込んだデータを確認する用のPandasもインポートします。
import spotipy from spotipy.oauth2 import SpotifyClientCredentials import pandas as pd
次に、IDとSECRETを読み込んでSpotifyを認証します。
client_id='CLIENT_ID' client_secret='CLIENT_SECRET' client_id_and_secret=SpotifyClientCredentials(client_id,client_secret) sp=spotipy.Spotify(client_credentials_manager=client_id_and_secret)
自分のUSER_NAMEとプレイリストIDを読み込みます。
user='USER_NAME' playlist_id='7qKwh074Msa1UMgsvsZeF1'
そして、プレイリストデータを取得します。
playlist_data=sp.user_playlist(user,playlist_id)
このままだとわかりずらいので、PandasのDataFrameで表示してみます。
df=pd.DataFrame.from_dict([playlist_data])
「tracks」にデータがありそうです。
「tracks」を見てみます。
tracks=playlist_data['tracks']
Pandasで確認します。
「items」にデータがありそうです。
items=tracks['items']
「items」をPandasで見てみます。
やっと曲のデータを確認できました。
このデータから曲のIDを取り出します。
for i in range(len(items)): print('---------------') print(i) id=items[i]['track']['album']['id'] print(id)
取り出せました。
--------------- 0 7L3eq511jN3Avxa2W4KLzP --------------- 1 55xoykmEm4wOYczA7oWhHI --------------- 2 4D39jrL55p5sgjoUmc1Cer --------------- 3 3iW7B6SbU5wPWX7qKl9Xpc --------------- 4 2A9Tx0DE0z8VHXea0XYnLb
次は、このデータを利用して、曲ごとの分析データを取得したいと思います。