当我试图用下面的代码检索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)
有什么想法?
我也有这些与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插件">>去:取消勾选任何杀毒软件,在我的案例中是赛门铁克端点。
错误消失了。希望能帮到大家。