我正在尝试在python中发送一封电子邮件,但是当我在一个更大的程序中运行它或者在解释器中运行它时,程序会崩溃。
0xf0
在解释器中,import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
fromaddr = "exampleg@gmail.com"
toaddr = "recipient@address.com"
msg = MIMEMultipart()
msg['From'] = fromaddr
msg['To'] = toaddr
msg['Subject'] = "Hi there"
body = "example"
msg.attach(MIMEText(body, 'plain'))
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(fromaddr, "Password")
text = msg.as_string()
server.sendmail(fromaddr, toaddr, text)
server.quit()
有什么想法吗?
答案 0 :(得分:0)
我的标准建议(因为我是它的开发者)是yagmail。
安装:pip install yagmail
然后:
import yagmail
yag = yagmail.SMTP(fromaddr, "pasword")
yag.send(toaddr, "Hi there", "example")
使用该软件包可以更轻松地完成许多工作,例如HTML电子邮件,添加附件以及避免在脚本中编写密码。
有关所有这些内容的说明(以及对陈词滥调感到抱歉),请查看readme on github。
答案 1 :(得分:0)
这是因为您在尝试连接Google SMTP服务器时遇到错误。 请注意,如果您使用的是Google SMTP,则应使用:
用户名:您的Gmail地址
密码:您的Gmail密码
您应该已经登录。如果仍然出现错误,您应该检查此列表中的问题:https://stackoverflow.com/a/25238515/1600523
注意:您也可以使用自己的SMTP服务器。