Kentaro Kuribayashi's blog

Software Engineering, Management, Books, and Daily Journal.

iTunes ライブラリをまるごと MT にする

なんか面白い PHP ライブラリでも落ちてないかしらんとふらふらさまよっていたら、iTunes XML Parser Class なんてものを見つけたので「これは!」と思った。がしかし、特に面白い使い道も思い浮かばなかったので、とりあえず iTunes のライブラリを MT のインポ・フォーマットなデータに変換するスクリプトを書いて、Blog をいっこでっちあげてみました。

これだけでは、だからなんなのだ? という話なのですが、aws.pl で amazon の検索結果を引っ張ってきて表示させたらこれはなかなかにアサマシエイトな代物になるんじゃないかと思ったけど、どうやってもうまくいかなかた…。ので、単に 1 アーティストにつきエントリをいっこ起し、それぞれをカテゴリ別一覧にして表示させてみただけという貧相な結果に…。あと、なんかジャンルやアーティスト名・曲名がおかしいのは iTunes のせいです!

ともあれ、iTunes のライブラリを MT のインポ・フォーマットなデータに変換するスクリプトを以下に示しすてぃんぐ。ていうか、iTunes XML Parser Class に付属していたサンプルを書き換えただけなのですが。というよりもむしろ、阿呆のように縦一列に print が並んでて、アレ過ぎ。

適当に設定を変更した後、コマンドラインから php itunes2mt.php とすれば、$output_file に MT インポデータができる予感。コマンドラインからじゃなく、Web ブラウザからでもいけるけど、元のライブラリが巨大なものだとタイムアウトするかも。ていうか、そんなことをしてはダメです(元データ = 7MB・鯖 CPU = Celeron 700MHz で変換に 30 秒ぐらいかかる…)。あと、事前に iTunes XML Parser Class の 47 行目にある htmlentities() をはずす必要があります( HTML エンティティへの変換には、エンコーディングの問題により、上にリンクしたスクリプトで対応しています)。