win32comを使ったOutlookの添付ファイル保存
- Outlookのメールをpythonで指定のフォルダに保存
from win32com.client import Dispatch
import datetime as date
save_path = r'保存先フォルダパス'
lag = 1 # 過去何日分のメールを検索対象とするか
sub_ = '対象メールの件名'
att_ = '*添付ファイル名'
outlook = Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder("6")
# サブフォルダも指定可
# inbox = inbox.Folders("sub-folder")
all_inbox = inbox.Items
val_date = (date.date.today() - date.timedelta(lag)).strftime("%d/%m/%y")
for msg in all_inbox:
print(msg)
if sub_ in msg.Subject:
for att in msg.Attachments:
if att_ in att.FileName:
att.SaveAsFile(save_path + "/" + att.FileName)
elif msg.SentOn.strftime("%d/%m/%y") < val_date:
break