程序目标:
我有一个python脚本,可以在我的Outlook
收件箱中搜索包含特定主题的电子邮件,如果找到该电子邮件,则会将电子邮件中的附件保存到特定路径。
当选择用于保存文件的路径在我的C:驱动器上时,脚本将按预期执行,但是我想将文件保存在共享的O:驱动器上,这导致在保存附件时出错。>
我遇到的错误:
但是,出现以下错误
“追踪(最近一次通话最近):文件“”,第19行,在 File“>”,SaveAsFile中的第2行 pywintypes.com_error:(-2147352567,“发生了异常。”,(4096, 'Microsoft Outlook','无法保存附件。路径不存在。 验证路径是否正确。',无,0,-2147024893),无)“
有什么主意导致此错误?
鉴于脚本按照C:驱动器的预期执行,似乎路径对于O:驱动器无效。
我的研究成果:
下面是代码:
import win32com.client
import os
import datetime
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
now = datetime.datetime.now().strftime("%Y %m %d")
inbox = outlook.GetDefaultFolder(6)
messages = inbox.Items
file_path_that_works = "C:/Users/kennedj/Desktop/projects"
file_path_that_does_not_work = "O:/projects"
for message in messages:
if message.Subject == 'Specific Subject':
attachments = message.Attachments
for attachment in attachments:
new_file_name = 'excel attachment {}.xls'.format(now)
attachment.SaveAsFile(os.path.join(file_path_that_does_not_work , new_file_name))
break
message.Delete()