Я нашел и изменил код для чтения файла вложений CSV из приложения Outlook с помощью Python.
В моем случае произошло следующее: когда я запрашиваю данные за определенный период, они будут отправлять мне ежемесячные данныезапрошенный период в отдельных электронных письмах (например, запрос: январь 2018 - декабрь 2018; получение: 12 писем с одним вложением CSV в каждом из них.) Я сохраняю все электронные письма, приходящие из хранилища данных, в «Почту DWH»
Все письма будут приходить на одну и ту же тему.Итак, мой код будет: Сохранить все CSV-вложения, которые хранятся в «Почте DWH» из указанной темы.
import win32com.client as client
import datetime as date
import os.path
def attach(mail_subject):
outlook = client.Dispatch("Outlook.Application").GetNamespace("MAPI")
folder = outlook.GetDefaultFolder("6").Folders["DWH Mail"]
val_date = date.date.today()
sub_target = mail_subject
for msg in folder.Items:
if msg.ReceivedTime.date() == val_date and msg.Subject == sub_target:
for att in msg.Attachments:
att.SaveASFile(os.getcwd() + "\\" + att.FileName)
print ("Mail Successfully Extracted")
break
print ("Done")
Теперь я могу запросить ZIP-файл, содержащий CSV, чтобы я мог получить файлБыстрее.Где и что я должен добавить в свой код, чтобы цикл извлек и сохранил CSV-файл из ZIP-файла?Вместо того, чтобы сохранить ZIP-файл и извлечь его позже вручную.
Я относительно новичок в Python, поэтому любая помощь будет принята с благодарностью.Спасибо.