google 日历 api 没有添加事件也没有抛出错误

google calendar api not adding event and not throwing an error

我正在尝试按照 google 添加事件的示例进行操作,最初它会抛出错误,因为我的格式有误,但现在它说正在创建事件并将我链接到它,但它永远不会实际上使事件。我附上的第 3 张图片是结果,它有一个小弹出窗口,提示添加事件时出错,奇怪的是我的 none 事件全部显示在日历上,即使我登录的是同一个帐户在这两种情况下,只有一个日历。该事件从未添加到我的日历我已经尝试 运行 多次,即使在事件中使用不同的数据和相同的结果,它说它添加它但从未这样做。我失去了任何帮助,非常感谢如果您需要,请随时询问更多信息!

编辑: 这是我的事件创建函数

def createEvent(summary, start_time, end_time, *args, description='', location='', timeZone='America/New_York'):

    credentials = get_credentials()
    service = discovery.build('calendar', 'v3', credentials=credentials)

    event = {
      'summary': summary,
      'location': location,
      'description': description,
      'start': {
        'dateTime': start_time,
        'timeZone': timeZone,
      },
      'end': {
        'dateTime': end_time,
        'timeZone': timeZone,
      },

      'reminders': {
        'useDefault': False,
        'overrides': [
          # {'method': 'email', 'minutes': 24 * 60},
          {'method': 'popup', 'minutes': 10},
        ],
      },
    }

    for arg in args:
        event[arg[0]] = arg[1]

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

编辑 2: 这是使用传入的信息示例调用函数的方式

googEvent = ['CSC 385 hw', '20-1-31T22:59:59', '20-1-31T23:59:59', 'EC Mylavarapu']

createEvent(googEvent[0], googEvent[1], googEvent[2], description=googEvent[3])

在研究了您的代码后,我发现您已经快要修复它了。你只需要强制日期格式为ISO 8601。为此,我使用了以下 Python 方法:

import datetime
…
googEvent = ['CSC 385 hw', datetime.datetime.strptime("31/01/2020 22:59:59",
  "%d/%m/%Y %H:%M:%S").isoformat(), datetime.datetime.strptime(
  "31/01/2020 23:59:59", "%d/%m/%Y %H:%M:%S").isoformat(), 'EC Mylavarapu']
createEvent(googEvent[0], googEvent[1], googEvent[2], description = googEvent[3])

这只是一种方法。每个日期首先使用 strptime() and later converted into ISO 8601 with isoformat() 从人类可读的字符串创建。如果您需要进一步的帮助,请回复我。