Удаление события календаря Google с помощью Python - получение идентификатора события - PullRequest
0 голосов
/ 18 мая 2019

Я недавно следовал краткому руководству по Python для Python здесь:

https://developers.google.com/calendar/quickstart/python

И успешно добавили некоторые объекты в мой календарь Google. Затем я пытаюсь удалить события, используя:

service.events().delete(calendarId='primary', eventId='eventId').execute()

Хотя в идеале это сработает, я не могу найти способ получить идентификатор какого-либо из моих событий. Как я могу получить / установить свои идентификаторы событий календаря Google, используя python

1 Ответ

0 голосов
/ 18 мая 2019

Когда вы создаете событие, используя:

insert(calendarId=*, body=*, sendNotifications=None, supportsAttachments=None, sendUpdates=None, conferenceDataVersion=None, maxAttendees=None)

Вы можете указать свой собственный идентификатор события в разделе body .Вот что говорит документация :

"id": "A String", # Непрозрачный идентификатор события.При создании новых одиночных или повторяющихся событий вы можете указать их идентификаторы.Предоставленные идентификаторы должны соответствовать следующим правилам: # - разрешенные символы в идентификаторе - это те символы, которые используются в кодировке base32hex, то есть строчные буквы av и цифры 0-9, см. Раздел 3.1.2 в RFC2938 # - длина идентификатора должна быть от 5 до1024 символа # - идентификатор должен быть уникальным для каждого календаря. В связи с глобально распределенным характером системы мы не можем гарантировать, что конфликты идентификаторов будут обнаружены во время создания события.Чтобы минимизировать риск коллизий, мы рекомендуем использовать установленный алгоритм UUID, такой как описанный в RFC4122.# Если вы не укажете идентификатор, он будет автоматически сгенерирован сервером.# Обратите внимание, что icalUID и id не идентичны, и только один из них должен быть указан во время создания события.Одно из различий в их семантике заключается в том, что в повторяющихся событиях все вхождения одного события имеют разные идентификаторы, в то время как все они используют одни и те же идентификаторы icalUID.

Вы можете сохранить этот идентификатор, а затем использовать его для удаления события.

Тело может быть следующим:

{
    "attachments": [ 
      {
        "mimeType": "...", 
        "title": "...", 
        "fileUrl": "...", 
        "iconLink": "...", 
        "fileId": "...", 
      },
    ],
    "creator": { 
      "self": false, 
      "displayName": "...",
      "email": "...", 
      "id": "...", 
    },
    "organizer": { 
      "self": false, 
      "displayName": "...", 
      "email": "...", 
      "id": "...", 
    },
    "summary": "...",
    "id": "Your ID GOES HERE", 
    "hangoutLink":"..."

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...