首页 > 解决方案 > 使用 python 解析 Outlook .msg 文件以获取 HTML 正文

问题描述

标签: pythonemailoutlookpython-3.6

解决方案


请记住,由 Outlook 创建的 MSG 文件不包含PR_HTMLMAPI 属性(与 Outlook 存储中的邮件不同);HTML 在属性中编码,其中包含压缩的 RTF 流 - 使用OutlookSpyPR_RTF_COMPRESSED查看一个 MSG 文件(单击“更多功能 | OpenIMsgOnIStg”)。

可以使用 Outlook 对象模型调用Namespace.OpenSharedItem然后读取 MailItem.HTMLBody属性,但是 Outlook 对象模型不能在服务(如 IIS)中使用,并且在默认存储中创建了一个临时消息,这意味着 Outlook 需要首先登录个人资料。

如果使用Redemption是一个选项(它是扩展 MAPI 包装器,可以从服务中使用),则可以使用RDOSessionGetMessageFromMsgFile然后阅读RDOMMailHTMLBody财产。


推荐阅读