def send_qq_mail(subject, content, receiver):
sender = "你的邮箱"
smtpserver = "smtp.qq.com" #使用的是qq邮箱
port = 465 # 端口号
user = '你的邮箱'
password = '授权码' # 请确保这是正确的密码或授权码
《具体去查询qq邮箱授权码》
msg = MIMEText(content, 'plain', 'utf-8') # 发送的文本信息
msg['Subject'] = Header(subject, 'utf-8')
msg['From'] = sender # 应该使用 sender 变量,而不是 user(尽管在这里它们是相同的)
msg['To'] = receiver
try:
# smtp = smtplib.SMTP()
# 在实例化时传入服务器地址和端口号
smtp = smtplib.SMTP_SSL(smtpserver, port)
smtp.login(user, password)
# 注意 receiver 应该是一个列表
smtp.sendmail(sender, [receiver], msg.as_string())
smtp.quit() # 显式关闭连接是一个好习惯
except smtplib.SMTPException:
print("Error: 无法发送邮件")
return ("Error: 无法发送邮件")
注意事项
1、放行端口号
465端口。不然发送邮件无法连接-宝塔、阿里云
2、不要使用这个方法
# smtp = smtplib.SMTP() 这个方法不加密,会被平台毙掉。无法访问 3、有问题多去查看日志,用gpt读一下日志的问题进行修改标签:qq,宝塔,sender,python,smtp,receiver,msg,smtplib,邮件 From: https://www.cnblogs.com/lidongxiao/p/18358206