我想有一个python脚本保存所有附件(从一个特定的文件夹和特定的时间戳(23:00)过滤他们的名字\u datestampf)。
你能帮帮我吗?
我正在使用以下代码(在另一个线程中找到),但它只允许我用标准名称保存收件箱文件夹中包含的最新邮件的附件:
import win32com.client
import os.path
Outlook = win32com.client.Dispatch("Outlook.Application")
olNs = Outlook.GetNamespace("MAPI")
Inbox = olNs.GetDefaultFolder(6)
Filtermail = "[SenderEmailAddress] = 'xxx@yyy.com'"
Items = Inbox.Items.Restrict(Filtermail)
Item = Items.GetFirst()
for attachment in Items.Attachments:
print(attachment.FileName)
attachment.SaveAsFile(os.getcwd() + '\\Mail\\' + 'zzzz.xlsx')
1条答案
按热度按时间nfs0ujit1#
首先,您需要修改搜索条件以获取特定时间范围内的项目。
其次,您需要迭代循环中找到的所有项,而不仅仅是获取第一个和处理附件(vba语法):
mailitem.receivedtime属性返回
Date
指明收到物品的日期和时间。第三,这里是对带有附件的项目的搜索查询(vba语法):
或
这些示例是用vba编写的,因为我不熟悉python语法,但是outlook对象模型对于所有类型的编程语言都是通用的。所以,希望这不成问题。
您可以在以下文章中阅读有关find/findnext或restrict方法的更多信息:
如何:使用find和findnext方法检索outlook日历项
如何:在outlook中使用restrict方法获取日历项