先给大家说说思路吧:
- 第一步:先实例化一个 SMTP
- 第二步:再连接一个邮箱,里面传入邮箱 SMTP 地址和端口
- 第三 步:登录邮箱,传入用户名和密码
- 第四步:发送邮件,传入发件人/收件人/消息字符串
- 第五步:关闭邮箱连接
具体代码:
message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8') message['From'] = Header("傻宝影视", 'utf-8') # 发送者 message['To'] = Header("测试", 'utf-8') # 接收者 subject = 'Python SMTP 邮件测试' message['Subject'] = Header(subject, 'utf-8')
# 实例化一个邮箱对象 smtp = smtplib.SMTP_SSL() # 连接邮箱 smtp.connect('smtp.qq.com', 465) # 邮箱登录 smtp.login('XXXX@qq.com', '密码') # 邮件发送者地址 邮件接收者地址 邮件发送消息 smtp.sendmail('XXXX@qq.com', ['XXX@qq.com'], message.as_string()) # 关闭邮箱链接 smtp.quit()
标红的那个地方很重要,我自己在那个地方出错了(smtplib.SMTPServerDisconnected: Connection unexpectedly closed)。本来是 smtplib.SMTP