【发布时间】:2013-03-25 09:37:41
【问题描述】:
我有一个电子邮件界面客户端,并且我正在使用 IMAP 来处理我的请求。我希望能够在列表视图中实时显示基本电子邮件数据。
例如,在 GMail 列表视图中。为此,我需要执行 IMAP 请求以获取所有电子邮件的主题、所有电子邮件的日期等。到目前为止,此方法有效。
问题是,我还想显示正文的第一个字符。如果我使用BODYSTRUCTURE 调用来获取text/HTML 部分的索引,则需要很长时间(对于具有数千个字符的电子邮件,每封电子邮件可能需要一秒钟以上,而仅使用主题/日期/等调用需要最多约 0.02 秒。
我尝试使用BODY[INDEX]<0.XYZ> 字节,其中XYZ 是我们想要获取的第一个字节的数量,但令我沮丧的是,它需要的时间与使用BODY[INDEX] 调用一样长。有时甚至更多。
还有其他方法可以快速获取第一个文本字符吗?如果我想在我的界面上列出 300 封电子邮件,我无法为每封电子邮件花费 1 秒钟的时间来获取第一个文本字符。
为此,我将 Python 与 imaplib 一起使用,尽管可能不相关。
【问题讨论】: