源码:
import smtplib from email.mime.text import MIMEText from email.header import Header # 定义SMTP邮件服务器地址 smtp_server = 'smtp.qq.com' # 邮件发送人邮箱 from_addr = 'xxx@qq.com' # 自己的邮想 # 邮件发送人邮箱密码 password = 'XXX' # 邮箱密码 # 邮件接收人 to_addr = 'xxX@163.com' # 测试接收邮件地址邮箱 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连接 conn = smtplib.SMTP_SSL(smtp_server, 465) # 设计调试级别 conn.set_debuglevel(1) # 登录邮箱 conn.login(from_addr, password) conn.send_message( from_addr, [to_addr],message.as_string()) # # 创建邮件内容对象 # msg = EmailMessage() # # 设置邮件内容 # msg.set_content('您好,这是一封来自Python的测试邮件', 'plain', 'utf-8') # 发送邮件 # conn.sendmail(from_addr, [to_addr], msg.as_string()) # 退出连接 conn.quit()
邮箱密码为:
运行后报错如下:
resent = msg.get_all('Resent-Date')
AttributeError: 'str' object has no attribute 'get_all'
Process finished with exit code 1
ctrl+鼠标左键点开send_message()后发现
将其改为
conn.send_message(message,from_addr, [to_addr]) 即可