【问题标题】:Gmail API using multiple labelIds使用多个 labelId 的 Gmail API
【发布时间】:2017-06-07 15:20:30
【问题描述】:

我正在尝试使用 Python 上的 API 访问 Gmail。我想要所有UNREAD 消息,仅来自INBOX

我可以打电话:

GMAIL.users().messages().list(userId='me',labelIds='INBOX').execute()

或:

GMAIL.users().messages().list(userId='me',labelIds='UNREAD').execute()

但是,同时调用 labelIds 不起作用。有人可以帮助同时使用labelIds

TIA

【问题讨论】:

  • 你是如何调用两个 labelIds 的?
  • 我尝试了不同的方法。添加了逗号(UNREAD,INBOX)labelIds='UNREAD',labelIds='INBOX'
  • 好的,试试我刚刚发布的解决方案,如果可行,请接受。
  • 多个labelIds肯定不行。我会尝试labelIds = ['UNREAD', 'INBOX']
  • @sailesh 谢谢.. 它有效,但过滤不正确。我也收到来自“促销”/“更新”标签的消息

标签: python gmail-api


【解决方案1】:

我想要所有未读消息,只来自收件箱。

UNREADINBOX 并不是真正的“标签”。试试q 参数,比如:

GMAIL.users().messages().list(userId='me', q='in:inbox is:unread').execute()

【讨论】:

【解决方案2】:

labelIds 可以是单个字符串,也可以是 python 字符串列表。

类似这样的:

GMAIL.users().messages().list(userId='me',labelIds=['UNREAD', 'INBOX']).execute()

过滤类别以仅显示收件箱中未读的主要电子邮件。

 GMAIL.users().messages().list(userId='me',labelIds=['UNREAD', 'INBOX'], q="category:primary").execute()

【讨论】:

猜你喜欢
  • 2018-06-09
  • 2018-07-22
  • 2018-12-26
  • 2021-02-05
  • 1970-01-01
  • 1970-01-01
  • 2021-09-16
  • 1970-01-01
  • 2019-12-19
相关资源
最近更新 更多