【发布时间】:2012-11-30 15:11:35
【问题描述】:
我在 Django 中有一个电子邮件客户端。目前支持使用 imaplib 的 GMail 帐户。
我的问题是:我想获得附件名称而无需下载完整的电子邮件。目前,为了获取附件名称或邮件正文,我需要使用带有参数(RFC822)的 fetch 函数下载整个邮件。
我知道我只能使用 HEADER.FIELDS 获取特定字段,例如主题,来自,cc。但是有没有办法在不下载整个电子邮件的情况下获取附件名称或电子邮件正文?
我的具体意思是:假设我有一封 30Mb 的电子邮件,正文中有一行文本和两个 15Mb 的附件。我想在不下载完整的 30Mb 正文的情况下获取附件名称和那一行文本。
谢谢
【问题讨论】:
-
"...在不下载整个电子邮件的情况下获取 [] 电子邮件正文的方法" -> 没有您的意思的附件?
-
你知道
BODYSTRUCTURE和(BODY ENVELOPE)吗? -
@JonClements:不,IMAP 服务器可以为您解析正文并返回您想要的部分。您必须能够解析
BODYSTRUCTURE才能知道要请求什么,然后您就可以做到。 -
@abarnert 是的,我发布了然后意识到可以做一些事情,大约在你发布的同一时间 - 所以我想我会删除它:)
-
编辑了问题以更好地详细说明问题。将调查 BODYSTRUCTURE 和 (BODY ENVELOPE)。