前言
SMTP是一个邮件发送协议,Python里内置了对SMTP的支持,是MUA(mail user agent)和MTA(mail transfer agent)之间的传输协议。可以发送纯文本邮件、HTML邮件以及带附件邮件。
正题
先来简单构造一个纯文本邮件:
from email.mime.text import MIMEText
msg = MIMEText('send by python...', 'plain', 'utf-8')
构造的MIMEText对象,第一个参数是邮件正文,第二个是子格式,plain表示是纯文本,最后一个要用utf-8编码来保证兼容性。
接下来发送邮件:
from_addr = '(邮箱)'
to_addr = '(邮箱)'
password = '(密码)'
smtp_server = 'smtp.qq.com'
server = smtplib.SMTP(smtp_server, 25) # SMTP协议默认端口是25
server.set_debuglevel(1) #打印出和SMTP服务器交互的信息
server.login(from_addr, password)
server.sendmail(from_addr, [to_addr], msg.as_string())
server.quit()
login() 方法登录SMTP