0

これはコードの問題です。以下は、特定の日付範囲で Google カレンダーからすべてのカレンダー イベントを取得するために使用するコードです。イベントの誰の部分を解析することはできますが、イベントのいつの部分を解析することはできません。

def retrieve_date_range_query(self,start_date='2013-09-28', end_date='2013-10-01'):
        print 'Date range query for events on Primary Calendar: %s to %s' % (start_date, end_date,)
        query = gdata.calendar.service.CalendarEventQuery('default', 'private', 'full')
        query.start_min = start_date
        query.start_max = end_date
        feed = self.cal_srv.CalendarQuery(query)
        print feed
        for i, an_event in enumerate(feed.entry):
            print '\t%s. %s' % (i, an_event.title.text,)
# 
            for p, a_participant in enumerate(an_event.who):
                    print '\t\t%s. %s' % (p, a_participant.email,)
# Method 1 to retrieve starttime and endtime of the event - but it fails
            for p, a_participant in enumerate(an_event.when):
                    print '\t\t%s. %s' % (p, a_participant.startTime,)
                    print '\t\t%s. %s' % (p, a_participant.endTime,)
# Method 2 to retrieve starttime and endtime of the event - this too fails
#  Value for a_when here is When: <?xml version='1.0' encoding='UTF-8'?> <ns0:when xmlns:ns0="http://schemas.google.com/g/2005" endTime="2013-09-30T09:00:00.000+05:30" startTime="2013-09-30T08:00:00.000+05:30" />
            for a_when in an_event.when:
                print '\t\tStart time: %s' % (a_when.startTime,)
                print '\t\tEnd time:   %s' % (a_when.endTime,) 

私は主にこのリンクから上記のコミュニティ コードを反映しています。そして、when オブジェクトと who オブジェクトの xml データを徹底的に分析しました。when オブジェクトではなく、who オブジェクトを解析できることに驚きました。コードに何か欠けていますか?理解を深めるために私が提供できる他の情報はありますか?御時間ありがとうございます。

4

1 に答える 1

0

問題を解決しました。

変数はこのように使用する必要があります

for a_when in an_event.when:
   print '\t\tStart time: %s' % (a_when.start_time,)
   print '\t\tEnd time:   %s' % (a_when.end_time,)

start_time を使用する理由がよくわかりません。しかし、それはそれが使用されなければならない方法です。ありがとう

于 2013-10-11T11:48:06.930 に答える