0

我正在尝试自动从某些电子邮件中获取附件,而 win32com.client 的文档非常可怕。

到目前为止,我有以下内容:

import win32com.client as win32
import os

outlook = win32.Dispatch("Outlook.Application").GetNamespace("MAPI")

inbox = outlook.Folders["Payments"].Folders["Inbox"]

messages = inbox.Items


for i in range(10):

    message = messages.GetNext()
    print(message.Sender)
    print(message.Subject)
    print(message.ReceivedTime)
    attachment = message.attachments

    for j in attachment:
        j.SaveAsFile(os.getcwd() + "\\" + j.FileName)

但是,我只想从“payments@email.com”中获取附件,但我不知道该怎么做。

有没有办法只从某些发件人那里获取电子邮件及其附件(如果我还可以过滤电子邮件标题,则奖励)?

4

1 回答 1

1

使用限制,例如filteredItems = Inbox.Items.Restrict("[SenderEmailAddress] = 'payments@email.com' ") 文档位于https://docs.microsoft.com/en-us/office/vba/api/outlook.items.restrict

于 2020-10-03T17:50:05.823 回答