【发布时间】:2018-02-18 18:04:37
【问题描述】:
我正在尝试提取带有某种星形颜色的邮件(Gmail API)。 例如,蓝星。
def listMessagesMatchingQuery(service, user_id='me', query=''):
try:
response = service.users().messages().list(userId=user_id,
q=query).execute()
print(response)
messages = []
if 'messages' in response:
messages.extend(response['messages'])
while 'nextPageToken' in response:
page_token = response['nextPageToken']
response = service.users().messages().list(userId=user_id, q=query,
pageToken=page_token).execute()
messages.extend(response['messages'])
return messages
except errors.HttpError as error:
print('An error occurred: %s' % error)
print(listMessagesMatchingQuery(GMAIL, query="has:blue-star"))
而且它不像网页版那样工作,它返回 0 封电子邮件。另一个查询效果很好(尝试了“from:...”、“has:attachment”、“has:drive”、“before:...”、“after:...”等)。找不到解决方案,我需要按星星的颜色对电子邮件进行排序。
【问题讨论】:
-
在 Gmail API 中查询超级明星是相当棘手的。您可能需要将其更改为例如
l:^ss_cb代表蓝星,例如 explained here。 -
非常感谢。这有助于@Tholle