使用Python GData Calendar API,有没有办法搜索/查询具有特定扩展属性的事件?
即我的程序正在创建日历事件并设置扩展属性ProgramID ='xxxxx'。在后期,我想找到所有事件,其中extended_property.ProgramID =='xxxx'
我目前正在通过执行一般查询然后循环遍历每个查找正确的扩展属性来实现此目的。这是非常耗费时间和CPU的,所以我想加快这个过程。
query = gdata.calendar.client.CalendarEventQuery()
feed = gcal.GetCalendarEventFeed(q=query)
for i, calEvent in enumerate(feed.entry):
calEventProperties = calEvent.extended_property
mikkiEvent = False
mikkiEventKey = ''
for eventProperty in calEventProperties:
if eventProperty.name == SETTINGS['CALID']:
mikkiEvent = True
if eventProperty.name == str(SETTINGS['CALID'] + 'EventKey'):
mikkiEventKey = eventProperty.value
我无法在API文档中找到解释如何向查询添加扩展属性查询的位置。
答案 0 :(得分:0)
目前您无法通过扩展属性进行查询。
根据您对应用程序和日历的控制程度,您可以通过在描述字段中放置某种元数据,查询该数据然后过滤结果(正如您当前所做的那样)来解决此问题。通过扩展属性匹配。