Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Python从邮箱恢复电子邮件列表_Python_Flask_Flask Mail - Fatal编程技术网

使用Python从邮箱恢复电子邮件列表

使用Python从邮箱恢复电子邮件列表,python,flask,flask-mail,Python,Flask,Flask Mail,是否有可能或任何库登录到给定的邮件并恢复给定发件人的邮件列表? 我的意思是,我提供了一个电子邮件地址,根据这个地址,收件箱中的所有邮件都会被过滤,我会返回到电子邮件列表或用户的最后一封邮件。 我使用flask mail发送电子邮件,但我认为无法恢复邮件列表。您应该查看标准库。它提供了使用最流行的邮箱文件格式(撰写本文时的Maildir、mbox、MH、Babyl和MMDF)读取存储在磁盘上的邮箱的功能 现在,出于性能考虑,许多邮件客户端都使用嵌入式数据库引擎来存储电子邮件。SQLite是流行的选

是否有可能或任何库登录到给定的邮件并恢复给定发件人的邮件列表? 我的意思是,我提供了一个电子邮件地址,根据这个地址,收件箱中的所有邮件都会被过滤,我会返回到电子邮件列表或用户的最后一封邮件。
我使用flask mail发送电子邮件,但我认为无法恢复邮件列表。

您应该查看标准库。它提供了使用最流行的邮箱文件格式(撰写本文时的Maildir、mbox、MH、Babyl和MMDF)读取存储在磁盘上的邮箱的功能

现在,出于性能考虑,许多邮件客户端都使用嵌入式数据库引擎来存储电子邮件。SQLite是流行的选择,你也可以试试这个库

最后,您还将发现像这样的外来文件格式。为此,您必须编写自己的解析器,或者转向PyPy来搜索是否有人已经为您完成了这项工作

作为个人笔记,如果你的电子邮件客户端允许改变它的存储后端,你可以考虑切换到一个很好的基于文本的存储格式为您的电子邮件-它肯定有帮助的情况下灾难恢复< /P>
例如,我正在使用Thunderbird并将其设置为使用mbox文件格式。因此,我可以通过这种方式迭代我的垃圾邮件文件夹中的邮件:

>>> path = '~/.thunderbird/4tuag540.default/ImapMail/ssl0.ovh-1.net/INBOX.sbd/Junk'
>>> from mailbox import mbox
>>> junk = mbox(path)
>>> for message in junk:
...    # Prinf the "From" header:
...    print(message['From'])
...