RubyでiTunesのコメントを修正

↓でiTunesの歌詞を取得してて
あ〜こら便利と思いながら使わせていただいてるんですが(画像参照)
Cyan's Image Chamber : Macintosh : TunesTEXT


<IMS src="http://〜>
とか
[〜http://〜]
みたいなのが入るので
rubyで除去するスクリプトを書いてみた。

#! /usr/bin/ruby
begin require 'rubygems'; rescue LoadError; end
$KCODE = "UTF8"
require 'rbosa'
OSA.utf8_strings = true

itunes = OSA.app('iTunes')

plist = itunes.current_playlist
pl_Array = plist.tracks()

pl_Array.each{ |track|
  preLyric = track.lyrics
  song = track.name
  artist = track.artist
  if preLyric != nil && preLyric.length != 0
    buzWords = preLyric.scan(/(<IMG src=.*>|\[.*http:\/\/.*\])/m)
    if buzWords.length != 0
      puts "#{artist}\t#{song}\t#{buzWords}"
    end
    
    #置換
    track.lyrics = preLyric.gsub((/(<IMG src=.*>|\[.*http:\/\/.*\])/m),"")
  end
}

※実行する時はiTunesで音楽再生させてください。
current_playlist ってのを使ってるからなんだけど
再生中のプレイリストを対象にしてるっぽい。
ライブラリ全体を対象にするメソッドがわからんかった。


参考:iTunesで洋楽と邦楽を分ける - griffin-stewieの日記