使用pythonwin32com检查电子邮件是回复还是响应

2024-09-27 19:23:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用pythonwin32com解析来自outlook的电子邮件。我可以从outlook文件夹中获取电子邮件,但无法验证电子邮件是答复还是答复,还是转发邮件,我需要检查收到的电子邮件是否是前一封邮件的答复(如果是,则查找原始邮件)还是转发邮件。我正在使用以下代码从outlook获取电子邮件。在

import win32com.client 

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox=outlook.Folders['xyz@xyz.com'].Folders['Inbox'].Folders['abc']
messagesReach = inbox.Items
for message in messagesReach:
    if message.Unread==True:
       print(message.body)

Tags: 代码import文件夹clientmessage电子邮件邮件folders
2条回答

嗨,头是ConversationID,可以用作message.ConversationID 参考https://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook.mailitem_properties.aspx

你可以试着读主题的前三个字符,并确定它是否有“Re:”-前缀,因此是一个回复。大多数时候都是这样。在

import win32com.client 

outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.Folders["xyz@xyz.com"].Folders["Inbox"].Folders["abc"]
messagesReach = inbox.Items
for message in messagesReach:
    if message.Unread == True:
       if message.Subject[:3] == "Re:":
          print(message.body)

相关问题 更多 >

    热门问题