Spotifyのプレイリストを分析して、自分の好きな音楽を知れないかな、と思っています。
Spotifyで分析するためには、データが必要です。
spotipyというライブラリを利用して、データを取ります。
以下の記事を参考にさせていただきました。
knowledge.insight-lab.co.jp
spotipyライブラリを使う手順
ざっくり手順を確認します。
- spotipyをインポート
- 認証をインポート
- idとsecretを変数に入れる
- spotipyを読み込む
- ユーザー名とプレイリストIDを設定する
- プレイリストデータを取得する
詳細
spotipyをインストールします。
pip install spotipy
まず、spotipyと認証ライブラリ(?)をインポートします。
import spotipy
from spotipy.oauth2 import SpotifyClientCredentials
そして、idを設定します。
idはSpotifyのDashboardで取得します。
developer.spotify.com
取得したIDとSECRETを設定します。
IDとSECRETは32桁くらいの文字列です。
client_id='ここに取得したIDを入れる'
client_secret='ここに取得したSECRETを入れる'
IDとSECRETを認証(?)したものを変数に入れます。
client_id_secret = SpotifyClientCredentials(client_id, client_secret)
次に、spotipyを読み込んで、変数spに入れます。
sp = spotipy.Spotify(client_credentials_manager=client_id_secret)
次に、ユーザー名と取得したいプレイリストを設定します。
user = 'Spotifyのユーザー名を入れてください'
playlist_id = '59aGQ5CfHNPhLe0OzbvBDD'
最後に、プレイリストデータを取得します。
playlist_data = sp.user_playlist(user, playlist_id)
確認します。
{'collaborative': False,
'description': '2022年11週目のプレイリスト',
'external_urls': {'spotify': 'https://open.spotify.com/playlist/7qKwh074Msa1UMgsvsZeF1'},
'followers': {'href': None, 'total': 0},
'href': 'https://api.spotify.com/v1/playlists/7qKwh074Msa1UMgsvsZeF1?additional_types=track',
'id': '7qKwh074Msa1UMgsvsZeF1',
'images': [{'height': 640,
'url': 'https://mosaic.scdn.co/640/ab67616d0000b27365134bf14c71182753b148acab67616d0000b27395d8c3f4c8b1eba5ad67c910ab67616d0000b273b52af5dbb146e83899a351a4ab67616d0000b273e9f07089161121bb12051264',
'width': 640},
{'height': 300,
'url': 'https://mosaic.scdn.co/300/ab67616d0000b27365134bf14c71182753b148acab67616d0000b27395d8c3f4c8b1eba5ad67c910ab67616d0000b273b52af5dbb146e83899a351a4ab67616d0000b273e9f07089161121bb12051264',
'width': 300},
{'height': 60,
'url': 'https://mosaic.scdn.co/60/ab67616d0000b27365134bf14c71182753b148acab67616d0000b27395d8c3f4c8b1eba5ad67c910ab67616d0000b273b52af5dbb146e83899a351a4ab67616d0000b273e9f07089161121bb12051264',
'width': 60}],
'name': '11weeks2022',
'owner': {'display_name': 'yusakuhamajima',
'external_urls': {'spotify': 'https://open.spotify.com/user/yusakuhamajima'},
'href': 'https://api.spotify.com/v1/users/yusakuhamajima',
'id': 'yusakuhamajima',
'type': 'user',
'uri': 'spotify:user:yusakuhamajima'},
'primary_color': None,
'public': True,
'snapshot_id': 'NDEsNjc4MWI1ODEyNTJlOWNkODkxOTJmY2Y3ZjBjOGI0ZmQ1YTUwYjAxNg==',
...
'offset': 0,
'previous': None,
'total': 5},
'type': 'playlist',
'uri': 'spotify:playlist:7qKwh074Msa1UMgsvsZeF1'}
無事にプレイリストデータを取得できました。
yuuuha.hatenablog.com