如何使用谷歌日历API向活动添加附件?

问题描述 投票:0回答:1

我正在使用 python 和 google API。虽然这个问题已经在这个网站上被问过好几次了,但大多数答案都已经过时了。

我已遵循文档中的指南,例如 this,但他们提供的代码不适用于最新版本的 API。在文档中,他们还说使用

alternateLink
字段,但该字段在 Drive API v3 中不存在,正如他们在 this stackoverflow answer 中所说,我们必须在 Drive API v3 中使用的字段是
webViewLink 
。但是,当我使用该字段时,它会创建事件,但没有任何附件,也不会引发任何错误。

有人有更新信息吗?

python google-drive-api google-calendar-api
1个回答
0
投票

样品:

这是一个示例脚本,用于创建带有附加文档的日历事件。需要考虑的一些要点是,目前仅支持 Google 云端硬盘附件。

这在身份验证后也有效。

服务构建器:

    from googleapiclient.discovery import build
    from Packages.auth import OAuthCall

    def Calendar(SCOPES):
      return build("calendar", "v3", credentials=OAuthCall(SCOPES))

日历事件插入

from googleapiclient.errors import HttpError
from Packages.serviceBuilder import Calendar

SCOPES = [
    "https://www.googleapis.com/auth/calendar",
    "https://www.googleapis.com/auth/calendar.events"
]


def main():
  try:
    service = Calendar(SCOPES)
    event = {
        "end": {
            "date": "2024-02-29",
            "timeZone": "Asia/Manila"
        },
        "start": {
            "date": "2024-02-28",
            "timeZone": "Asia/Manila"
        },
        "attachments": [
            {
                "fileUrl":
                "[Insert drive sharing link here]"
            },
        ],
        'attendees': [
            {
                'email': '[Email Address here]'
            },
        ],
        'summary':
        'Test Event',
    }
    service.events().insert(calendarId='primary',
                            supportsAttachments=True,
                            sendUpdates="all",
                            body=event).execute()

  except HttpError as error:
    print(f"An error occurred: {error}")


main()

文档:

https://developers.google.com/resources/api-libraries/documentation/calendar/v3/python/latest/calendar_v3.events.html#insert

© www.soinside.com 2019 - 2024. All rights reserved.