這似乎很簡(jiǎn)單,但是我似乎無(wú)法使用該庫(kù)在Google日歷中刪除活動(dòng)。使用我的代碼,注釋掉“刪除事件”代碼并運(yùn)行,該代碼將插入一個(gè)事件,然后列出該事件。我還要檢查以確??梢栽谟脩艚缑嬷锌吹剿?。然后,我從創(chuàng)建的事件中獲取ID,然后將其作為eventId“刪除事件”調(diào)用中的ID 。然后,我取消注釋刪除代碼,并注釋掉插入代碼,然后再次運(yùn)行它。這種方法似乎不起作用:我仍然在events().list輸出中看到該事件,并且仍然在UI中看到它。# Delete Eventresp = service.events().delete(calendarId='primary', eventId='9c9ppp94isp15103t54mtjss8s')pprint(vars(resp))print('Event Deleted')# Inserts EventGMT_OFF = '-07:00' # PDT/MST/GMT-7EVENT = { 'summary': 'Test Event2', 'start': {'dateTime': '2018-09-15T19:00:00%s' % GMT_OFF}, 'end': {'dateTime': '2018-09-15T22:00:00%s' % GMT_OFF},}e = service.events().insert(calendarId='primary', sendNotifications=True, body=EVENT).execute()print('''*** %r event added:Start: %sEnd: %s''' % (e['summary'].encode('utf-8'), e['start']['dateTime'], e['end']['dateTime']))# Read Eventsnow = datetime.datetime.utcnow().isoformat() + 'Z' # 'Z' indicates UTC timeprint('Getting the upcoming 10 events')events_result = service.events().list(calendarId='primary', timeMin=now, maxResults=10, singleEvents=True, orderBy='startTime').execute()events = events_result.get('items', [])if not events: print('No upcoming events found.')for event in events: start = event['start'].get('dateTime', event['start'].get('date')) print(start, event['id'], event['summary'])當(dāng)我打印出刪除響應(yīng)(pprint(vars(resp)))時(shí),它看起來(lái)像這樣:{'_in_error_state': False, '_rand': <built-in method random of Random object at 0x7f9ac007e420>, '_sleep': <built-in function sleep>, 'body': None, 'body_size': 0, 'headers': {'accept': '*/*', 'accept-encoding': 'gzip, deflate', 'user-agent': 'google-api-python-client/1.7.4 (gzip)'}, 'http': <httplib2.Http object at 0x1051cd250>, 'method': u'DELETE', 'methodId': u'calendar.events.delete', 'postproc': <bound method RawModel.response of <googleapiclient.model.RawModel object at 0x1052e9290>>,如果我uri從上面的delete響應(yīng)中復(fù)制并使用Postman,則該事件將被毫無(wú)問(wèn)題地刪除。有想法嗎?
使用Google的Python客戶端庫(kù)刪除日歷事件
喵喵時(shí)光機(jī)
2021-05-11 13:12:48