为了账号安全,请及时绑定邮箱和手机立即绑定

保存附件时出错

保存附件时出错

MM们 2021-03-16 17:12:15
我是Python的新手,但遇到了一个我无法逾越的错误。如果主题匹配给定的字符串,请编写代码以查看我的观点并提取附件(excel)。这是代码:import win32com.clientoutlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")inbox = outlook.GetDefaultFolder(6)print "Inbox name is:", inbox.Namemessages = inbox.Itemsmessage = messages.GetFirst ()while message:    if message.Subject.startswith('EOD Report'):        attachments = message.Attachments        if attachments.Count>=1:            attachment = attachments.Item(1)            filename = 'c:\Users\xx\Python\%s'%attachment            print filename            attachment.WriteToFile(filename)    message = messages.GetNext()如果我摆脱了“ attachment.WriteToFile(filename)”,它运行得很好。但是,该特定语句会产生错误:Traceback (most recent call last):  File "C:\Users\xx\.spyder2\.temp.py", line 31, in <module>    attachment.WriteToFile(filename)  File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 522, in    __getattr__    raise AttributeError("%s.%s" % (self._username_, attr))AttributeError: Item.WriteToFile有人知道出什么问题了吗?谢谢
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

代替:

attachment.WriteToFile(filename)

尝试:

attachment.SaveAsFile(filename)

我认为WriteToFile适用于从Exchange服务器本身检索附件的情况。

该SaveAsFile是当你保存你从Outlook本地阅读附件的。


查看完整回答
反对 回复 2021-03-26
  • 1 回答
  • 0 关注
  • 181 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信