为什么我的 Python SMTPLib 电子邮件脚本不起作用,我该如何修复它?

Why is my Python SMTPLib email script not working and how do I fix it?

提问人:Bird 提问时间:11/17/2023 最后编辑:Bird 更新时间:11/19/2023 访问量:33

问:

因此,我使用Youtube教程编写了一个基本的Python电子邮件脚本。评论说该视频非常有帮助,但我的代码不起作用。

我的代码看起来像这样

from email.message import EmailMessage
import ssl
import smtplib

email_sender = '[email protected]'
email_password = "corr ectp assw ords"

email_receiver = '[email protected]'

subject = 'Written by Code!'
body = """
    This was written by my program! Tell me if it worked.
"""

em = EmailMessage()
em['From'] = email_sender
em['To'] = email_receiver
em['Subject']
em.set_content(body)

context = ssl.create_default_context()

with smtplib.SMTP_SSL('smtp.gmail.com', 465, context) as smtp:
    smtp.login(email_sender, email_password)
    smtp.sendmail(email_sender, email_receiver, em.as_string())

错误如下所示:smtplib.SMTPServerDisconnected: Connection unexpectedly closed

有谁知道它为什么失败以及我该如何修复它?谢谢!

python 电子邮件 gmail-api smtplib

评论

0赞 rabbibillclinton 11/17/2023
欢迎使用 Stack Overflow。如果您发送电子邮件的方式无关紧要,也许另一个 Stack Overflow 问题可能会有所帮助。stackoverflow.com/questions/64505/......这种特定方法可能有效,也可能无效,但其他更简单的方法肯定有效。
0赞 Bird 11/17/2023
谢谢!我不知道如何区分发送电子邮件的方式......我只想要一封从 correctemma[email protected] 发送到 [email protected] 的电子邮件,其中包含简单的文本......
0赞 Alex 11/17/2023
@Bird是错别字吗?应该是我猜的"stmp.gmail.com"smtp
0赞 Bird 11/17/2023
我真是个白痴——好吧,现在我明白了smtplib.SMTPServerDisconnected: Connection unexpectedly closed

答:

0赞 Bird 11/17/2023 #1

所以我解决了我的问题。我不得不切换smtplib.SMTP_SSL('smtp.gmail.com', 465, context)smtplib.SMTP_SSL('smtp.gmail.com')

我不知道它为什么有效