Win32com Outlook正文属性错误

问题描述 投票:3回答:1

当我试图用下面的代码检索outlook邮件的正文时,我得到的是

com_error: (-2147467259, 'Unspecified error', None, None)

每一个 print(message.<properties>) 工作,除了 Body 财产

import win32com.client

outlook = win32com.client.gencache.ensureDispatch("Outlook Application").GetNamespace("MAPI")

actionItems = outlook.GetDefaultFolder(6)
messages = actionItems.Items
message = messages.GetFirst()
print(message.Subject)
print(message.Body)   -
print(message.Count)

有什么想法?

python python-3.x win32com
1个回答
1
投票

我也有这些与win32com对象试图访问不可用的值有关的错误。诸如的错误。

$ pywintypes.com_error: (-2147467260, 'Operation aborted', None, None)
$ pywintypes.com_error: (-2147467259, 'Operation aborted', None, None)

取决于你试图访问的是什么不可用的数据,例如:

win32com.client.gencache.EnsureDispatch("Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(6).SenderName

会导致。

$ pywintypes.com_error: (-2147467260, 'Operation aborted', None, None)

和:

win32com.client.gencache.EnsureDispatch("Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(6).SenderName.Sender.GetExchangeUser().PrimarySmtpAddress

将导致:

$ pywintypes.com_error: (-2147467259, 'Operation aborted', None, None)

我发现我的错误是由于我的outlook账户上的一个反病毒插件 阻止了com对象访问敏感的权限数据,如电子邮件地址,正文等。

我的修复方法是

在outlook 2016中:进入:

文件>>选项>>插件> "管理。COM插件">>去:取消勾选任何杀毒软件,在我的案例中是赛门铁克端点。

错误消失了。希望能帮到大家。

© www.soinside.com 2019 - 2024. All rights reserved.