iTunesのプレイリストをChangeLogに
2004-09-10-3
[Chalow][Programming]
Blog Hacks #94 の関連 Hack です。
iTunesはプレイリストがXMLなのでいろいろ遊べます。
プレイリストは、
しかし、XMLの構造が再帰的で扱い難く悩ましい。
keyに対応するのがstringだったりdateだったりintegerだったり。
インストールしようとしたら、あれも必要これも必要と言われ、保留。
ありがちな挫折。 <http://search.cpan.org/~bdfoy/Mac-iTunes-0.82/>
結局 XML::Parser でがしがしパーズする方針にしました。「深さが 5 の
ときに<key></key>をどうたら」といった感じのバッドノウハウ万歳。
で、iTunes XML を ChangeLog に変換するスクリプトを作りました。各曲
には最後にいつ聴いたかという情報(Play Date UTC)が埋め込まれてい
るので、それを元にChangeLogメモ化しました。
ソースは当面以下に置いておきます。物好きな人はどうぞ。
<http://chalow.net/misc/itunes2cl_pl.txt>
(「無償・無保証・著作権放棄」<http://lifehacks.ta2o.net/byebye-copyright.html>)
iTunesはプレイリストがXMLなのでいろいろ遊べます。
プレイリストは、
C:\...\My Documents\My Music\iTunes\iTunes Music Library.xmlなどにあります。
しかし、XMLの構造が再帰的で扱い難く悩ましい。
keyに対応するのがstringだったりdateだったりintegerだったり。
<key>Track ID</key> <integer>38</integer>Mac::iTunesなるPerl Moduleを miyagawa 氏に教えてもらったので、
<key>Name</key> <string>Rock Lobster</string>
<key>Artist</key> <string>The B-52's</string>
[...]
<key>Date Modified</key>
<date>2004-07-25T02:37:16Z</date>
インストールしようとしたら、あれも必要これも必要と言われ、保留。
ありがちな挫折。 <http://search.cpan.org/~bdfoy/Mac-iTunes-0.82/>
結局 XML::Parser でがしがしパーズする方針にしました。「深さが 5 の
ときに<key></key>をどうたら」といった感じのバッドノウハウ万歳。
で、iTunes XML を ChangeLog に変換するスクリプトを作りました。各曲
には最後にいつ聴いたかという情報(Play Date UTC)が埋め込まれてい
るので、それを元にChangeLogメモ化しました。
<key>Play Date UTC</key>XMLをChangeLogに変換するとこんな感じになります。
<date>2004-09-05T06:11:25Z</date>
2004-08-09 heheheこれを chalow で変換すると以下のように Blog っぽくなります。やほう!
* Part one:
Mike Oldfield / Part one
in Tubular Bells
* Part two:
Mike Oldfield / Part two
in Tubular Bells
ソースは当面以下に置いておきます。物好きな人はどうぞ。
<http://chalow.net/misc/itunes2cl_pl.txt>
(「無償・無保証・著作権放棄」<http://lifehacks.ta2o.net/byebye-copyright.html>)