使用python 实现自动发送邮件功能,并上传到宝塔
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读一下日志的问题进行修改
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂