【问题标题】:Is it possible to check if an email contains an attachement just from the e-mail header?是否可以仅从电子邮件标题检查电子邮件是否包含附件?
【发布时间】:2011-04-10 05:36:02
【问题描述】:

我正在用 Python 开发一个电子邮件客户端。

是否可以在不下载整个电子邮件的情况下仅从电子邮件标题中检查电子邮件是否包含附件?

【问题讨论】:

    标签: python email imap imaplib


    【解决方案1】:

    试试IMAP4.fetch(message_set, "BODYSTRUCTURE")

    阅读RFC3501 了解有关 FETCH BODYSTRUCTURE 响应的详细信息。

    【讨论】:

      【解决方案2】:

      “附件”是一个相当广泛的术语。 HTML 消息的图像是附件吗?

      一般情况下,您可以尝试分析内容类型标头。如果它是multipart/mixed,则消息很可能包含附件。

      【讨论】:

      • 是的,确实如此,但并非总是如此 :) 那么有什么完美的解决方案吗?
      • 我认为 multipart/mixed 的问题在于人们使用它来发送带有那些可怕的图像签名块的 HTML 电子邮件。如果不仔细观察,就无法从附件中分辨出来。
      • 确切地说,对于 HTML 电子邮件,图像(技术上)也是附件,如果我们深入思考,它们 附件,因为它们是本地实体而不是外部实体.
      • @EugeneMayevski'EldoSCorp 如果它们是 Base64 编码的呢?
      • @sashoalm 那又怎样?编码不会改变附件的性质。分析部分的内容/类型是了解消息部分中包含的内容以及是否可以将其视为附件的唯一方法。
      猜你喜欢
      • 2011-08-07
      • 2012-04-13
      • 1970-01-01
      • 1970-01-01
      • 2018-09-15
      • 2011-10-07
      • 1970-01-01
      • 2013-05-01
      • 1970-01-01
      相关资源
      最近更新 更多