python - 使用 win32com.client 列出可用的消息属性

我有一个目录,其中包含数百封以 .msg 格式存储的 Outlook 电子邮件。我有一个脚本来访问特定的属性,例如发件人姓名、主题等,但是脚本在某些文件上失败。经过一些调查,失败的文件是对日历邀请的响应,失败的属性是“收件人”属性,因此必须对电子邮件和日历邀请进行不同的处理。所有文件都以 .msg 格式存储,因此如果不打开每个单独的文件,就无法区分哪些文件是哪些文件。

我发现的其他一些帖子着重于直接访问 Outlook,而不是使用目录中保存的 .msg 文件。我目前已经对一些进行了硬编码(请参阅下面的代码),但是这个练习已经证明属性可以根据文件类型表现不同。

下面是我的代码示例。

for eachFile in msgList:
    filePath = outDir + "\\" + eachFile
    msg = outlook.OpenSharedItem(filePath)
    print msg.ReceivedTime
    print msg.Subject
    print msg.Body
    print msg.To
    print msg.Size
    print msg.Attachments

有没有一种方法可以列出每个文件的所有可用属性?或者是否有一种方法来区分消息的类型,例如电子邮件、日历?

最佳答案

在访问任何消息属性之前,请检查 Class 属性(由所有 OOM 对象公开)- MailItem 对象的值为 43 (olMailItem)。

https://stackoverflow.com/questions/56492400/

相关文章:

javascript - 简单的 react-spring 组件在 gatsby 中不起作用 - 元

laravel - 将 Laravel Vue 组件编译成不同的 js 文件

python - "pyenv virtualenvwrapper"是做什么的?

lua - 为什么不补间位置?

javascript - 将 Uint8Array 转换为 Float32Array

reactjs - Webpack 无法导入带有 ` 标记的 React 组件

c# - 使用 AddOpenIdConnect 时,为什么要添加默认范围?

performance - LINQ AsNoTracking 运行缓慢

apache-spark - 加入 Spark 返回重复的隐式数据类型不匹配

tensorflow - 基于直方图定义 TF 中的损失函数