Доступ к Amarok2 через Python и dbus
Печатаем, что играет амарок. Скрипт очень простой (считаем, что локаль процесса, откуда вызывается скрипт, юникодная):
#!/usr/bin/env python2.5
# -*- coding: utf-8 -*-
import dbus
bus = dbus.SessionBus()
proxy = bus.get_object('org.kde.amarok', '/Player')
player = dbus.Interface(proxy, "org.freedesktop.MediaPlayer")
metadata = player.GetMetadata()
# access metadata using operator []:
np = u"/me now listening to %(artist)s — %(title)s (album: %(album)s)" % {
'title': metadata['title'],
'artist': metadata['artist'],
'album': metadata['album']
}
print np.encode("utf-8")