Как создавать мероприятия на весь день с помощью Google Calendar API - PullRequest
1 голос
/ 06 мая 2020

На этой странице Google дает следующий пример того, как создать событие в календаре Google:

event = {
  'summary': 'Google I/O 2015',
  'location': '800 Howard St., San Francisco, CA 94103',
  'description': 'A chance to hear more about Google\'s developer products.',
  'start': {
    'dateTime': '2015-05-28T09:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'end': {
    'dateTime': '2015-05-28T17:00:00-07:00',
    'timeZone': 'America/Los_Angeles',
  },
  'recurrence': [
    'RRULE:FREQ=DAILY;COUNT=2'
  ],
  'attendees': [
    {'email': 'lpage@example.com'},
    {'email': 'sbrin@example.com'},
  ],
  'reminders': {
    'useDefault': False,
    'overrides': [
      {'method': 'email', 'minutes': 24 * 60},
      {'method': 'popup', 'minutes': 10},
    ],
  },
}

event = service.events().insert(calendarId='primary', body=event).execute()
print 'Event created: %s' % (event.get('htmlLink'))

Этот код работает нормально, но я изо всех сил пытаюсь создать " событие на весь день. Я видел, как предполагалось, что для события на весь день переданная строка даты должна быть сокращена до просто даты, например, «2020-05-08», но это приводит к ошибке Invalid format: "2020-05-08" is too short".

1 Ответ

2 голосов
/ 07 мая 2020

Я считаю, что ваша цель следующая.

  • Вы хотите создать мероприятие на весь день, используя googleapis с python.
  • Вы хотите знать причину ошибки сообщение Invalid format: "2020-05-08" is too short".

Для этого, как насчет этого ответа?

Точка модификации:

  • Когда 2020-05-08 используется для свойства из dateTime, такая ошибка возникает. В этом случае поместите его в свойство date.

Измененный скрипт:

При изменении вашего скрипта измените его следующим образом.

От:
'start': {
  'dateTime': '2015-05-28T09:00:00-07:00',
  'timeZone': 'America/Los_Angeles',
},
'end': {
  'dateTime': '2015-05-28T17:00:00-07:00',
  'timeZone': 'America/Los_Angeles',
},
Кому:
'start': {
  'date': '2020-05-08',
  'timeZone': 'America/Los_Angeles',
},
'end': {
  'date': '2020-05-08',
  'timeZone': 'America/Los_Angeles',
},

Ссылка:

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