見出し画像

Pythonでお気に入りのYoutubeの曲を自動でSpotifyプレイリストにしてみた。

Youtubeでpythonで何かワクワクすることできないかなあと探していたところ。

この動画を発見。
『Automate Spotify with Python』


何ができるかというと、

Youtubeのお気に入りのプレイリストを
Spotifyで自動プレイリスト化


Spotifyのヘビーユーザー(プレミアム会員)である私は
気になってしまいました。

上で紹介させて頂いた動画では、初見の方はいろんな設定にとまどることも
あるかと思い、Tutorialとして今回解説するに至りました。
(執筆期間は丸3日です。そのうち半分以上はエラーとの戦いでした汗)

使用している外部サービスとファイル一覧は下記。

<使用したAPI>
-Youtube Data API 
-Spotify Web API 
<事前にインストールする外部ライブラリ>
-google-auth-oauthlib==0.4.1
-google-api-python-client==1.7.11
-youtube_dl==2020.1.24
-requests==2.22.0
<ファイル一覧>
実行ファイル
・create_playlist.py (←今回メインのpythonファイル) 
・exceptions.py

認証情報ファイル
・secrets.py (Spotify API用)(←今回これは使わず、メインファイルへspotifyユーザーIDとトークンはベタ打ちです。
・client_secret.json (Google API用)


事前準備から実行ファイル(create_playlist.py)完成までの
大まかなステップは、

Step 0 : 事前準備(Spotify API, Youtube Data API, 外部ライブラリ)
Step 1 : Log Into Youtube
Step 2 : Grab Our Liked Videos
Step 3 : Create A New Playlist (POST)
Step 4 : Search for the Song (GET)
Step 5 : Add this song into the new Spotify playlist

です。

私のPC使用環境は、

OS:Windows7
Python環境:Jupyter Notebook (ここの環境構築はググってください)

下記、Step0から順にやっていきます。
途中で、HTTPの知識について、コードの内容を理解するために、いろいろ詳しくやっていますが、

早くSpotifyプレイリストを作りたいんじゃい!!

という方は事前準備だけやれば良いです。


Step0 : 事前準備(Spotify API編)


準備で作成して欲しいものは、
Spotifyのプレイリスト作成実行用ファイルとは別に、

SpotifyユーザーIDとOauthトークンを記載する用のsecrets.pyファイル

になります。下記3行だけのファイルになる。

# Make sure to fill in your spotify client_secret information
spotify_token = ""
spotify_user_id = ""


まず、ユーザーIDの確認について、
下記の『Spotify』にアクセスし、ログイン後、
https://www.spotify.com/us/

Spotifyログイン後Account overview

赤枠内がユーザー名ですね。


つぎに、トークンの生成方法について、

先ほどのユーザー名を記入して、GET TOKENボタンを押したら、
生成されたトークンをコピーしてsecrets.pyファイルにペーストしてください。

画像7


secrets.pyファイルが作成できたら、ファイル名が正しいことを確認してから
実行用ファイルと同じディレクトリへ保存します。
このトークンは外部に漏らさないように。(私も黒塗りしてます。)

めちゃくちゃわかりやすいので下記でSpotify APIを遊んでみると良いです。

たとえば、Search for an Itemから

画像8

Try itを押すと、もろもろ出てくるところから抜粋しますね。

 "genres": [
         "j-metal",
         "japanese heavy metal",
         "japanese power metal",
         "visual kei"
       ]

"visual kei"って笑
ビジュアル系ってことですね。

つぎに、椎名林檎さんを検索。

search_for_an_item_椎名林檎

抜粋すると、

"images": [
         {
           "height": 640,
           "url": "https://i.scdn.co/image/8c2784fb15908746353259b6bdeb16fa4ba834bf",
           "width": 640
         }

アー写が取得できました。

さいごに、user_idと”name”のところだけ変えてもらうと、

Create a Playlist『おきにの曲たちだよ!』

Try itを押して、
spotifyのアプリを起動し、プレイリストを見てみてください。

ワクワクしませんか?笑

ここから先は

18,510字 / 19画像

¥ 2,980

この記事が気に入ったらチップで応援してみませんか?