问题描述
所以我想自动回复收件箱中的任何电子邮件,此代码适用于 Gmail,但不适用于 Outlook 和 yahoo 邮件,以下是我的代码。
_,data = mail.search(None,'(UNSEEN)')
mail_ids = data[0]
id_list = mail_ids.split()
print(f'Found {len(id_list)} unseen messages......')
for mess in id_list:
_,data = mail.fetch(mess,'(RFC822)')
for response in data:
if isinstance(response,tuple):
print('preparing email body.........')
msg = email.message_from_string(response[1].decode('ISO-8859-1'))
body_of_email = '''\Hi''' # you can change the body of the email here
mssg = MIMEText(body_of_email,'plain')
mssg['Subject'] = msg['subject']
mssg['From'] = msg['from']
mssg['To'] = msg['to']
mssg['Message-ID'] = msg['Message-ID']
try:
mssg.add_header('reply-to',email_from)
s = smtplib.SMTP(host='smtp-mail.outlook.com',port=587)
s.starttls()
s.login(user='______@outlook.com',password='___***')
print('sending email....')
print(type(mssg))
s.sendmail('_______@outlook.com',mssg['From'],mssg.as_string())
print('sent email....')
except Exception as e:
print(e)
这是我的代码,当我用 Gmail 尝试这个时,它运行良好,它能够回复特定的消息,现在当我用 Outlook 尝试这个时,我收到以下错误消息,
(554,b'5.2.0 STOREDRV.Submission.Exception:SendAsDeniedException.MapiExceptionSendAsDenied; Failed to process message due to a permanent exception with message Cannot submit message. 0.35250:0A004584,1.36674:0A000000,1.61250:00000000,1.45378:02000000,1.44866:4D020000,1.36674:0E000000,1.45378:52020000,1.44866:48020000,16.55847:F4020000,17.43559:0000000024020000000000000000000000000000,20.52176:140F21901F00103100000000,20.50032:140F21908F17000000000000,0.35180:140F2190,255.23226:00000000,255.27962:0A000000,255.27962:0E000000,255.31418:1F000130,0.35250:00000000,1.44866:1E000000,1.36674:32000000,1.45378:23000000,1.44866:01000000,16.55847:8A000000,17.43559:0000000080030000000000000100000000000000,20.52176:140F21901F0070204800D13D,20.50032:140F21908F17101087000000,0.35180:0A002F3D,255.23226:03003600,255.27962:32000000,255.17082:DC040000,0.27745:9D000000,4.21921:DC040000,255.27962:FA000000,255.1494:9F000000,0.38698:05000780,1.41134:46000000,0.37692:86000000,0.37948:86000000,5.33852:00000000534D545000010480,7.36354:0100000000000109CDF21155,4.56248:DC040000,7.40748:010000000000010B06000000,7.57132:0000000000000000302E3431,1.63016:32000000,4.39640:DC040000,8.45434:FE7F0300763A176100000000000000003766632D,1.46798:04000000,5.10786:0000000031352E32302E343132392E3033313A444D35505231384D42303938373A31653665643331362D316265332D343766632D623138662D3764643636623835373432653A373138323000,7.51330:C373404D5B19D90813000000,0.39570:13000000,1.55954:0A000000,0.49266:02000000,1.33010:0A000000,2.54258:00000000,0.40002:7A000000,1.56562:00000000,1.64146:32000000,1.33010:32000000,2.54258:DC040000,255.1750:DA000000,255.31418:0A005636,0.22753:0B00CD0E,255.21817:DC040000,0.64418:0A006136,4.39842:DC040000,0.41586:E4000000,4.60547:DC040000,0.21966:0300F40F,4.30158:DC040000 [Hostname=DM5PR18MB0987.namprd18.prod.outlook.com]')
我已经解决了那些有类似错误的人的问题,他们的大部分解决方案都使用了错误的电子邮件,我检查了我的,但事实并非如此,当我将 mssg.as_string() 更改为普通文本时代码有效,所以我认为问题出在消息和标题的构造上,请提供任何帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)