2009-09-11 41 views
1

我一直在與從iTunes蟒蛇搞亂。iTunes COM - 如何獲取歌詞

但是,我一直無法訪問任何曲目的歌詞。

我一直在使用python。這裏是代碼:

>>> import win32com.client 
>>> itunes = win32com.client.Dispatch("iTunes.Application") 
>>> lib = itunes.LibraryPlaylist 
>>> tracks = lib.Tracks 
>>> tracks 
<win32com.gen_py.iTunes 1.12 Type Library.IITTrackCollection instance at 0x16726176> 
>>> tracks[1] 
<win32com.gen_py.iTunes 1.12 Type Library.IITTrack instance at 0x16746256> 
>>> tracks[1].Lyrics 
Traceback (most recent call last): 
    File "<interactive input>", line 1, in <module> 
    File "D:\Programas\Python26\lib\site-packages\win32com\client\__init__.py", line 462, in __getattr__ 
    raise AttributeError("'%s' object has no attribute '%s'" % (repr(self), attr)) 
AttributeError: '<win32com.gen_py.iTunes 1.12 Type Library.IITTrack instance at 0x16780824>' object has no attribute 'Lyrics' 

曲目[1]沒有屬性'歌詞',因爲它是'IITTrack'類型。只有'IITFileOrCDTrack',它是'IITTrack'的子類型,具有這個屬性。我的問題是如何訪問'IITFileOrCDTrack'?或者如何將'IITTrack'轉換爲'IITFileOrCDTrack'?

對此非常感謝。謝謝。

P.S:有關如何下載iTunes COM接口文檔的信息here

回答

3

嘗試將其轉換這樣的(未測試):

track_converted = win32com.client.CastTo(tracks[1], "IITFileOrCDTrack")