#!/usr/bin/python3
def Sendmall():
import smtplib
from email.mime.text import MIMEText
from email.header import Header
# 第三方 SMTP 服务
mail_host="smtp.qq.com" #设置服务器
mail_user="XXXXXXXXX@qq.com" #用户名
mail_pass="填写生成的授权码" #口令
sender = 'XXXXXXXXX@qq.com' ##发邮件账号
receivers = ['XXXXXXXXX@qq.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
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')
try:
smtpObj = smtplib.SMTP()
smtpObj.connect(mail_host, 25) # 25 为 SMTP 端口号
smtpObj.login(mail_user,mail_pass)
smtpObj.sendmail(sender, receivers, message.as_string())
print ("邮件发送成功")
except smtplib.SMTPException:
print ("Error: 无法发送邮件")
def
if __name__ == '__main__':
Sendmall()
需要注意的是需要打开发送邮件的QQ的发邮件服务
点击设置——账户
开启这两个功能,之后生成授权码,也就是上面mail_pass的口令,这样python就可以登陆这个邮件服务器进行邮件发送了。
原文链接菜鸟教程