尝试在 python 中使用 outlook 凭据发送电子邮件

Trying to send email using outlook credentials in python

提问人:Mishal Anwer 提问时间:11/17/2023 最后编辑:Eugene AstafievMishal Anwer 更新时间:11/20/2023 访问量:80

问:

outlook_server = 'smtp-mail.outlook.com'
outlook_port = 587

# Your email credentials
username = ''
password = ''
# password = 'Alpine1400!'
# Create a connection to the SMTP server using SSL
server = smtplib.SMTP(outlook_server, outlook_port)
server.ehlo()
server.starttls()
server.ehlo()
server.ehlo()
# Log in to your account
server.login(username, password, initial_response_ok=True)

我附上了错误图像 我在server.login行上收到此错误 多次检查凭据,我使用的是Outlook生成的应用密码 已经尝试了所有端口,我的防火墙也已关闭,没有运行防病毒软件,这意味着我已经用尽了所有 Google ChatGPT 解决方案,如果有人可以在这里提供帮助,仍然有相同的错误

错误:

smtplib 中。SMTPAuthenticationError:(535,b'5.7.3 身份验证失败 [DX0P273CA0065.AREP273.PROD.OUTLOOK.COM 2023-11-17T14:12:55.892Z 08DBE70BA75BEAD0]')

Python 身份验证 电子邮件 Office365 SMTP-AUTH

评论

0赞 Sembei Norimaki 11/17/2023
您没有附加任何错误
0赞 Mishal Anwer 11/17/2023
附上错误行

答:

0赞 Dmitry Streblechenko 11/17/2023 #1

Office 365 在通过 SMTP 发送邮件时不再允许基本凭据。您需要使用 OAuth。

评论

0赞 Mishal Anwer 11/18/2023
如何使用 OAuth ?你能分享一个示例代码吗?
0赞 Dmitry Streblechenko 11/18/2023
请参阅 learn.microsoft.com/en-us/exchange/...