airflow.providers.google.suite.hooks.calendar

该模块包含一个 Google 日历 API 钩子。

模块内容

GoogleCalendarHook

通过 Google Cloud 连接与 Google 日历进行交互。

class airflow.providers.google.suite.hooks.calendar.GoogleCalendarHook(api_version, gcp_conn_id='google_cloud_default', impersonation_chain=None)[源代码]

基类: airflow.providers.google.common.hooks.base_google.GoogleBaseHook

通过 Google Cloud 连接与 Google 日历进行交互。

在 Google 表格中读取和写入单元格:https://developers.google.com/calendar/api/v3/reference

参数
  • gcp_conn_id (str) – 获取连接信息时使用的连接 ID。

  • api_version (str) – API 版本。例如 v3

  • impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据进行模拟,或获取列表中最后一个帐户的 access_token 所需的帐户链表,该帐户将在请求中被模拟。 如果设置为字符串,则该帐户必须授予发起帐户“服务帐户令牌创建者”IAM 角色。 如果设置为序列,则列表中的标识必须将“服务帐户令牌创建者”IAM 角色授予紧邻的前一个标识,其中列表中的第一个帐户将此角色授予发起帐户。

get_conn()[源代码]

检索与 Google 日历的连接。

返回

Google 日历服务对象。

返回类型

任何

get_events(calendar_id='primary', i_cal_uid=None, max_attendees=None, max_results=None, order_by=None, private_extended_property=None, q=None, shared_extended_property=None, show_deleted=False, show_hidden_invitation=False, single_events=False, sync_token=None, time_max=None, time_min=None, time_zone=None, updated_min=None)[源代码]

从单个 calendar_id 获取 Google 日历中的事件。

https://developers.google.com/calendar/api/v3/reference/events/list

参数
  • calendar_id (str) – 要与之交互的 Google 日历 ID

  • i_cal_uid (str | None) – 可选。指定响应中 iCalendar 格式的事件 ID。

  • max_attendees (int | None) – 可选。如果与会者人数超过指定人数,则仅返回参与者。

  • max_results (int | None) – 可选。在一个结果页面中返回的最大事件数。可以通过响应中的非空 nextPageToken 字段检测不完整的页面。默认情况下,该值为 250 个事件。页面大小永远不能大于 2500 个事件

  • order_by (str | None) – 可选。可接受的值为 "startTime" 或 “updated”

  • private_extended_property (str | None) – 可选。扩展属性约束指定为 propertyName=value。仅匹配私有属性。此参数可以重复多次,以返回与所有给定约束匹配的事件。

  • q (str | None) – 可选。自由文本搜索。

  • shared_extended_property (str | None) – 可选。扩展属性约束指定为 propertyName=value。仅匹配共享属性。此参数可以重复多次,以返回与所有给定约束匹配的事件。

  • show_deleted (bool | None) – 可选。默认为 False

  • show_hidden_invitation (bool | None) – 可选。默认为 False

  • single_events (bool | None) – 可选。默认为 False

  • sync_token (str | None) – 可选。从返回的 nextSyncToken 字段获取的令牌

  • time_max (datetime.datetime | None) – 可选。事件开始时间的上限(不包含)。默认情况下没有过滤器

  • time_min (datetime.datetime | None) – 可选。事件结束时间的下限(不包含)。默认情况下没有过滤器

  • time_zone (str | None) – 可选。在响应中使用的时区。默认为日历时区。

  • updated_min (datetime.datetime | None) – 可选。事件最后修改时间的下限。

create_event(event, calendar_id='primary', conference_data_version=0, max_attendees=None, send_notifications=False, send_updates='false', supports_attachments=False)[源代码]

在指定的日历上创建事件。

https://developers.google.com/calendar/api/v3/reference/events/insert.

参数
  • calendar_id (str) – 要与之交互的 Google 日历 ID

  • conference_data_version (int | None) – 可选。API 客户端支持的会议数据版本号。

  • max_attendees (int | None) – 可选。如果与会者人数超过指定人数,则仅返回参与者。

  • send_notifications (bool | None) – 可选。默认为 False。

  • send_updates (str | None) – 可选。默认为“false”。可接受的值为“all”、“none”、"externalOnly" https://developers.google.com/calendar/api/v3/reference/events#resource

此条目是否对您有帮助?