I have a requirement - connect with the generic email account within corporate domain and get the attachment downloaded - I can easily do with my personal outlook account using a python package - but when I am trying to connect corporate email account - getting some connectivity issue as its always singing through Okta. Do you have any idea how to make the connectivity happen using Okta with corporate mail exchange server using IMAP4.
Here what I am trying to achieve is – authenticate the generic account from my Python program and then connect with the corporate mail exchange server.
The following code snippet working fine with personal account but getting some connectivity issue when trying connect with corporate mail server.
Appreciate your any advice and help.
svdir = ‘/Users/xxxxx/Desktop/Dwnld_email_attachment’
mail = imaplib.IMAP4_SSL(‘outlook.office365.com’,993)
typ, msgs = mail.search(None, ‘(SUBJECT “Test ASN File”)’)
msgs = msgs.split()
for emailid in msgs:
resp, data = mail.fetch(emailid, "(RFC822)") email_body = data m = email.message_from_string(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): print(sv_path) fp = open(sv_path, 'wb') fp.write(part.get_payload(decode=True)) fp.close()