问题描述
我一直在尝试建立一个可以无限期运行的半交互式脚本,以从传入电子邮件中提取附件,将其标记为已读,然后将附件发送到另一封电子邮件,但是到目前为止,我一直在努力使其可靠地打开电子邮件,更不用说将其下载到temp文件夹了。如果有人对如何更适当地解决此问题有任何想法,那么将不胜感激,我尝试过使用pyzmail和email模块,但沿途我有些困惑,从外部看可能会更清楚事情了。如果我对我的意图没有多大的了解,请先深表歉意,以下是当前的脚本(由于我一直在努力,所以不完整)
import smtplib,imapclient,os,time
if __name__ == "__main__":
smtpObj = smtplib.SMTP('smtp-mail.outlook.com',587)
if 250 not in smtpObj.ehlo(0):
print('First Attempt Unsuccessful. Attempting to connect to alternate')
smtpObj = smtplib.SMTP_SSL('smtp-mail.outlook.com',465)
if 250 not in smtpObj.ehlo(0):
input("Could not successfully reach either server. Enter anything to exit: ")
quit()
else:
print('Successfully Connected to alternate Outlook Port at :465')
else:
print("Successfully Connected to Outlook.")
eConnected = True
userMail = input("What is the Outlook email you are using? ")
userPass = input("Please enter the password for the email: ")
smtpObj.starttls()
smtpObj.ehlo()
smtpObj.login(userMail,userPass)
imapObj = imapclient.IMAPClient('imap-mail.outlook.com',ssl=True)
imapObj.login(userMail,userPass)
try:
os.mkdir('tmp_downloads')
except OSError as e:
print('Temporary attachments folder already exists')
os.chdir('tmp_downloads')
imapObj.select_folder('INBox',readonly=True)
while eConnected == True:
UIDs = imapObj.search(['UNSEEN'])
eAttach = imapObj.fetch(UIDs,['UNSEEN'])
for x in range(0,len(UIDs)):
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)