【发布时间】:2019-01-22 06:50:25
【问题描述】:
我正在努力获取电子邮件的大型文本语料库。没有 API 可以读取 Google Group 中的消息。因此,另一种方法是使用属于该组的 Gmail 帐户。通过使用此 Gmail,我可以检查发送到该组的所有邮件。我正在使用 python 和 Gmail API 来获取邮件。我面临的问题是,我无法获取来自群组的电子邮件。
results = service.users().messages().list(userId='me',q="from:support-dev-group@wso2.com", maxResults=10).execute()
当我用另一个普通用户 ID 替换 from: 时,它正在工作。当我用组电子邮件 ID 替换 from: 时,它给出的结果为零。我可以获取通过我的 Gmail 获取群组 gmail 的实际代码吗?
第二个问题是,
当我使用某人的邮件查询时:
results = service.users().messages().list(userId='me',q="from:xyz@wso2.com", maxResults=10).execute()
我得到这样的结果
{'resultSizeEstimate': 82, 'messages': [{'id': '1653929b0b414390', 'threadId': '1644c19f390faf28'}, {'id': '165330aaa5bb9134', 'threadId': '16532ef13e7eec8d'}......
这里只返回消息 ID。为了获得带有标题的正文的邮件,我必须再次查询每个 ID。我不能在一个查询中获得完整的 JSON 吗?
【问题讨论】:
-
我也在寻找同样的东西。看起来您需要对返回的每个 id 使用
get方法,并且您可以指定fields参数以仅返回您需要的数据(以获得更好的性能和更少的带宽使用)。
标签: python email gmail gmail-api google-groups