0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Tower Records Musicのプレイリスト救済

Posted at

Tower Records Musicがサービス終了してしまうのでSpotifyに乗り換えたのだが、Tower Records Musicでせっせと作ったプレイリストを捨て去るのが悲しかったので救済した話。

世の中には各種アプリのプレイリストを相互変換するサービスがあり、Soundiizもそのひとつ。しかし残念ながらTower Records Musicのプレイリストに対応している相互変換サービスは見つからなかった。また、Tower Records Musicの方にも、プレイリストを他のアプリで読み込めるような形式でエクスポートする機能はない。

ただ、SoundiizはCSV形式の入力が可能で、Spotifyへの出力は当然可能なので、Tower Records MusicプレイリストをなんとかしてCSVに変換できれば救済は可能と見込んだ。

Tower Records Musicにはいい感じのプレイリストエクスポート機能がない。仕方がないのでWeb版Tower Records Musicでプレイリストを表示し、そのHTMLからプレイリスト情報を掘り起こすという手段をとる。整理すると以下の流れ:

  1. Web版Tower Records Musicでプレイリストを表示
  2. 「名前を付けて保存」でHTMLファイルを保存
  3. 自作スクリプトでHTMLを読み込み、CSVに出力
  4. SoundiizでCSVを読み込みSpotifyにエクスポート

SoundiizのCSVは「曲名,アーティスト名」というごく簡単なものでもOKなので、曲名とアーティスト名を抽出するHTMLパーサを作る。

ここでChatGPT(じゃなくて本当はBing Copilotを使ったが、ここではChatGPTと書くことにする)に働いてもらうことにした。プレイリストを保存したHTMLをChatGPTのプロンプトに貼って、「ここから曲名とアーティスト名を抽出するPythonスクリプトを書いて」とお願い。ただHTMLがプロンプトに貼るには長大すぎたので、最初の数曲の情報が書いてあるあたりまででカットした。それでもChatGPTはちゃんと動くスクリプトを一発で出してくれた。偉いぞChatGPT。

後はVS CodeのGitHub Copilotに頼りつつ仕上げていくと、あっという間に目的のものが出来てしまった。こちらに置いてあります

実際に動かすと、半分以上の曲はちゃんとSpotify側でも取り込んでくれたが、失敗する曲も多い。昭和の歌謡曲ばかりなこともあって、曲名とアーティスト名だけではマッチングが取れないケースが多いのかな。そこはまぁ、Spotifyのレコメンド機能もあるから、またすぐに立派に育ってくれたので全然OKでした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?