How can i change an Object type ?

KuhlmannSascha Sascha.Kuhlmann at gmail.com
Tue Jul 3 22:30:35 EDT 2007


Hi,

i tried now for several hours to read through a win32com API to access
Itunes and read out myplaylists.

First of all the Code:

import os, sys, pythoncom, win32com.client, pywintypes, sets

def showplaylists():
    iTunes = win32com.client.Dispatch("iTunes.Application")
    playlists = iTunes.LibrarySource.Playlists
    numPlaylists = playlists.Count
    while (numPlaylists != 0):
        curPlaylist = playlists.Item(numPlaylists)
        if curPlaylist.Kind == 2:
            if curPlaylist.Smart():
                numPlaylists -= 1
            else:
                print curPlaylist.Name
                numtrack = curPlaylist.Tracks.Count
                while (numtrack !=0):
                    curPlaylist.Tracks(numtrack).Name
                numtrack -= 1
                numPlaylists -= 1
showplaylists()

The current Logic is to access first Itunes and then a Playlist
Collection.
This Playlist collection returns different kind of objects for
Playlists.
I am focussing on the Playlists of the object UserPlaylist.
(CodeLine:   if curPlaylist.Kind == 2:)
After that i should be sure to have a UserPlaylist, but Python stops
with an exception that the requested Attribute "Smart"  is not
available
Error MEssage:
AttributeError: '<win32com.gen_py.iTunes 1.9 Type Library.IITPlaylist
instance at 0x30216960>' object has no attribute 'Smart'


Any help is appreciated......

Regards
Sascha




More information about the Python-list mailing list