Python: Сохранить вложение электронной почты с конкретным субъектом в заданном месте - PullRequest
0 голосов
/ 28 марта 2019

Я хочу сохранить вложения из внешнего вида, используя Python, Вложение из фиксированной темы письма. Я уже искал, получил ответ, который не работает, и я не могу комментировать. - Сохранить с помощью Win32 Outlook

Я попробовал код и вот он -

from win32com.client import Dispatch
import datetime as date
import os

outlook = Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder("6")
all_inbox = inbox.Items
val_date = date.date.today()

sub_today = 'Download Attachment 1'
att_today = '1.csv'
for msg in all_inbox:
    if msg.Subject == sub_today:
        break

for att in msg.Attachments:
    if att.FileName == att_today:
        break

att.SaveAsFile(os.getcwd() + '\\1.csv')
att.ExtractFile('1.csv')
open(att)    
att.WriteToFile('x')

При выполнении в командной строке я получаю сообщение об ошибке -

D:\r>python attach.py
Traceback (most recent call last):
  File "attach.py", line 21, in <module>
    att.ExtractFile('1.csv')
  File "C:\Program Files\Python37\lib\site-packages\win32com\client\dynamic.py", line 527, in __getattr__
    raise AttributeError("%s.%s" % (self._username_, attr))
AttributeError: <unknown>.ExtractFile

1 Ответ

0 голосов
/ 28 марта 2019
Объект

Attachment в OOM (переменная att в вашем коде) не предоставляет метод ExtractFile.Он также не предоставляет метод WriteToFile.

...