python - 如何在 python 中搜索特定的 Outlook 电子邮件

标签 python email outlook python-2.x

我有以下有效的代码,它可以读取我的 Outlook 收件箱中的最新电子邮件并打印该邮件的正文。但是,我希望能够指定一个静态电子邮件地址,并返回来自该人的所有邮件。我将如何更改代码来执行此操作?

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)
messages = inbox.Items
message = messages.Getlast
body_content = message.body
print body_content

我认为这就像将“messages.Getlast”更改为“messages.Get('电子邮件地址')之类的东西一样简单,但运气不好。

在此先感谢您的帮助。

最佳答案

您已经有一个脚本可以让您获取文件夹中的邮件列表:

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)
messages = inbox.Items

收到所有消息后,您只需检查消息发件人是否相同:

sender = "my_sender"
sender = sender.lower()
for message in messages:
    if sender in message.sender.lower():
        # This message was send by sender
        print message.body

该代码应打印每条 messages 的正文,其中 sender 包含在 message.sender 中。

我添加了 lower() 函数来避免大写问题。您可能想要删除它。

希望对您有所帮助。

关于python - 如何在 python 中搜索特定的 Outlook 电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38744747/

相关文章:

python - matplotlib savefig 性能,在循环中保存多个 png

c - SMTP:SSL_connect 失败但没有错误

rest - "The tenant for tenant guid does not exist"即使用户已在用户端点上列出?

python - Pandas 版本之间的 MultiIndex/Reshaping 差异

python - 使用 Python 计算 P**n 而 n 接近 +oo 并且 P 是矩阵

linux - 另一个 IP 如何通过我的 qMail 发送电子邮件?

c++ - COM 错误 0x80004003(无效指针)访问 MS Outlook 联系人

java - 启动 MS Outlook,并在电子邮件中添加附件

python - 删除大文件中的空列

django-allauth 注册后未发送确认电子邮件