来自gmail新邮件的触发事件

时间:2014-02-19 10:48:58

标签: gmail google-bigquery

是否存在可以在gmail中捕获的API或事件,以便我可以启动工作流甚至激活python脚本。

我正在尝试自动化一项工作,该工作将从已到达gmail的电子邮件中提取csv附件。然后它将csv ETL转换为BigQuery。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我不确定gmail本身,

但你要尝试的一件事是使用IMAP lib编写一个python脚本来读取gmail消息并使用googleclient python将其加载到bigquery。使用cron设置它每x分钟运行一次以检查gmail帐户。

这应该为您提供读取gmail消息的入门代码:

https://gist.github.com/baali/2633554

如果您只想要新邮件,只需将搜索参数'ALL'替换为'UNSEEN'即可。

更多信息: https://docs.python.org/2/library/imaplib.html

将python加载到BigQuery的示例: https://developers.google.com/bigquery/loading-data-into-bigquery

我仍在等待IFTTT https://ifttt.com/wtf为用户提供API以创建自己的频道或自定义操作。即Google BigQuery频道。

希望有所帮助。

答案 1 :(得分:1)

最近进行了此集成:

  1. 打开监视消息事件:https://developers.google.com/gmail/api/v1/reference/users/watch

  2. 当您获得新的传入messageId(messagesAdded历史记录类型)时,您要求提供其信息(以完整格式):https://developers.google.com/gmail/api/v1/reference/users/messages/get

  3. 在元数据中,您将找到一个payload.parts[i]所在的body.attachmentId并使用其ID https://developers.google.com/gmail/api/v1/reference/users/messages/attachments/get