iTunesスクリプトで曲を検索する方法

iTunes COM for Windowsスクリプトで曲を検索する方法について。この操作はIITPlaylistのSearch()メソッドを利用する。まずは以下の例題を見て欲しい。これを実行すると「BEATLES」というアーティスト名で検索をかけ、該当した全ての曲が表示される。

スクリプト

var	iTunesApp = WScript.CreateObject("iTunes.Application");
var	tracks = iTunesApp.LibraryPlaylist.Search("BEATLES",2); //return IITTrackCollection
var	numTracks = tracks.Count;

while (numTracks != 0){
	var track = tracks.Item(numTracks);//トラックを取得
	var name = track.Name;//曲名
	var artist = track.Artist;//アーティスト
	var str = str + name + "/" + artist + "\n";	
	numTracks--;
}

WScript.Echo(str);

説明

肝心なのは2行目のみ。ここでSearchメソッドを利用している。引数には検索のキーワードと、検索の種類を渡している。今回キーワードが「BEATLES」で検索のタイプが2となっている。2というのは、歌手名による検索である。このほかには以下のような検索ワードが定義されている。0はなんでもok。1は現在見えているプレイリストから検索、3はアルバム名からといった風になっている。

ITPlaylistSearchFieldAll (0) Search all fields of each track.
ITPlaylistSearchFieldVisible (1) Search only the fields with columns that are currently visible in the display for the playlist.
Note that song name, artist, album, and composer will always be searched, even if these columns are not visible.
ITPlaylistSearchFieldArtists (2) Search only the artist field of each track (IITTrack::Artist).
ITPlaylistSearchFieldAlbums (3) Search only the album field of each track (IITTrack::Album).
ITPlaylistSearchFieldComposers (4) Search only the composer field of each track (IITTrack::Composer).
ITPlaylistSearchFieldSongNames (5) Search only the song name field of each track (IITTrack::Name).

https://connect.apple.com/cgi-bin/WebObjects/MemberSite.woa/301/wo/