我正在使用 python 和 google API。虽然这个问题已经在这个网站上被问过好几次了,但大多数答案都已经过时了。
我已遵循文档中的指南,例如 this,但他们提供的代码不适用于最新版本的 API。在文档中,他们还说使用
alternateLink
字段,但该字段在 Drive API v3 中不存在,正如他们在 this stackoverflow answer 中所说,我们必须在 Drive API v3 中使用的字段是 webViewLink
。但是,当我使用该字段时,它会创建事件,但没有任何附件,也不会引发任何错误。
有人有更新信息吗?
样品:
这是一个示例脚本,用于创建带有附加文档的日历事件。需要考虑的一些要点是,目前仅支持 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()
文档: