繁体   English   中英

如何使用 Python 从 Outlook 中突出显示(选定)邮件?

[英]How to get highlighted (selected) mail from outlook using Python?

我不明白如何使用 Python 解析 Outlook 中突出显示(选定)的邮件?

我有这个代码,但它适用于最后一封邮件。

import win32com.client

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)

需要解析突出显示邮件的发件人电子邮件地址吗?

应该

import win32com.client

outlook = win32com.client.Dispatch("Outlook.Application")
messages = outlook.ActiveExplorer().Selection
message = messages(1)

try:
    if message.SenderEmailType == "EX":
        print("EX: ", message.Sender.GetExchangeUser().PrimarySmtpAddress)
    else:
        if message.SenderEmailType == "SMTP":
            print("SMTP: ", message.SenderEmailAddress)
except Exception as e:
    print(e)

使用Application.ActiveExplorer.Selection.Item(1)检索当前选择的消息。 您的代码检索收件箱中的最后一封电子邮件 - 无论“最后一封”是什么,因为您从未明确对项目集合进行排序。 您很可能会收到收件箱中最旧的电子邮件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM