我试图让我的思想围绕时代精神,利用Python DBus API。
要获取最新访问的文件和应用程序并不难,我这样做:
#! /usr/bin/env python
from zeitgeist.client import ZeitgeistDBusInterface
from zeitgeist.datamodel import Event, Interpretation, TimeRange, \
StorageState, ResultType
zg = ZeitgeistDBusInterface()
events = zg.FindEvents(
TimeRange.always(),
[Event.new_for_values(interpretation=Interpretation.ACCESS_EVENT)],
StorageState.Available, 3, ResultType.MostRecentEvents)
for e in events:
event = Event(e)
subjects = event.get_subjects()
for s in subjects:
print "subject", s.text, s.uri
解释标志Interpretation.ACCESS_EVENT
返回所有匹配的事件,即访问的文件和应用程序。有更多的解释标志可用,但我没有成功地从 withInterpretation.EVENT_INTERPRETATION
及其子类之外的事件中获得结果。更具体地说,我想访问Interpretation.DATA_CONTAINER
及其子类,但它永远不会返回任何结果。
那么在这种情况下我做错了什么吗?你能提出什么建议吗?