У меня есть скрипт для загрузки электронной почты определенной темы из Outlook, используя IMAP и Python.Я могу загрузить вложения определенной темы из этого скрипта, но я хочу загрузить только вложение текущей даты
Я создал скрипт для загрузки вложения электронной почты из outlook, но хочу загрузить только вложение текущей даты этогоконкретный предмет
import imaplib
import email
import os
import glob
from glob import glob
import shutil
import datetime
def file_remove(files_r):
try:
rm_file = glob(files_r)
for f_r in rm_file:
os.remove(f_r)
except Exception as e:
print(e)
def attachments_download():
svdir = os.getcwd()+'\\'+"Attachments\\"
val_date = datetime.date.today()
mail = imaplib.IMAP4_SSL('outlook.office365.com')
mail.login("abc@outlook.com","p@111")
mail.select("INBOX")
type,msgs = mail.search(None,'(SUBJECT "Employees Dump")','(SENTSINCE {0})'.format(val_date))
msgs = msgs[0].split()
for emailid in msgs:
resp,data=mail.fetch(emailid,"(RFC822)")
email_body = data[0][1]
m = email.message_from_bytes(email_body)
if m.get_content_maintype() != 'multipart':
continue
for part in m.walk():
if part.get_content_maintype() == 'multipart':
continue
if part.get('Content-Disposition') is None:
continue
filename = part.get_filename()
if filename is not None:
sv_path = os.path.join(svdir,filename)
if not os.path.isfile(sv_path):
fp = open(sv_path,'wb')
fp.write(part.get_payload(decode=True))
fp.close()
def file_rename(files):
file = glob(files)
for f in file:
os.rename(f,'C:\\Users\\128938\\PycharmProjects\\attachment_download_script\\Attachments\\hcm_dump.xls')
if os.path.exists('D:\\sas_projects\\data_files\\input_files\\hcm_file_upload\\hcm_dump.xls'):
os.remove('D:\\sas_projects\\data_files\\input_files\\hcm_file_upload\\hcm_dump.xls')
shutil.copy('C:\\Users\\128938\\PycharmProjects\\attachment_download_script\\Attachments\\hcm_dump.xls','D:\\sas_projects\\data_files\\input_files\\hcm_file_upload\\')
if __name__ == '__main__':
abc = ("C:\\Users\\128938\\PycharmProjects\\attachment_download_script\\Attachments\\*")
file_remove(abc)
attachments_download()
xyz = ("C:\\Users\\128938\\PycharmProjects\\attachment_download_script\\Attachments\\*")
file_rename(xyz)
Как я могу скачать вложение в электронное письмо по теме, упомянутой выше, только на текущую дату