Насколько мне известно, Apple предоставляет бесплатный (бесплатный) SDK для iTunes
Visual Плагины для OS X и Windows. Если вы не можете получить с помощью этого то, что вам нужно, вы можете всегда использовать интерфейс сценариев iTunes Apple Events для мониторинга посредством опроса из другого приложения OS X с использованием OSA-совместимого интерфейса, такого как AppleScript или appscript с Python, Ruby или Objective-C. Это может быть не то, что вам нужно, но это задокументировано и поддерживается.
Например, с помощью py-appscript вот как получить доступ к текущему треку и тем, которые находятся в недавно воспроизведенном смарт-листе:
>>> from appscript import *
>>> it = app('iTunes')
>>> it.current_track.rating() # 40 == 2 stars
40
>>> len(it.playlists['Recently Played'].tracks())
80
>>> it.playlists['Recently Played'].tracks[1].rating()
40
>>> it.playlists['Recently Played'].tracks[1].rating.set(to=100)
>>> it.playlists['Recently Played'].tracks[1].rating() # 100 = 5 stars
100
Также можно фильтровать различные поля метаданных (для просмотра откройте определение сценария iTunes.app в редакторе сценариев AppleScript):
>>> import datetime
>>> an_hour_ago = datetime.datetime.now() - datetime.timedelta(hours=1)
>>> it.playlists['Library'].tracks[its.modification_date >= an_hour_ago]()
[app(u'/Applications/iTunes.app').sources.ID(45).library_playlists.ID(49347).file_tracks.ID(72017)]
Но обратите внимание, что изменения в рейтингах не влияют на дату изменения.
person
Ned Deily
schedule
16.11.2009