python如何发送邮件

以qq邮箱作为示例
#! /usr/bin/env python
# -*- coding: utf-8 -*-

# 发送邮件.py
import smtplib
from email.mime.text import MIMEText
from email.header import Header

# 配置参数
sender_email = "发件人@qq.com"  # 发件人QQ邮箱
password = "授权码"  # QQ邮箱授权码(不是QQ密码!)
receiver_email = "收件人@163.com"  # 收件人163邮箱

smtp_server = "smtp.qq.com"  # QQ邮箱SMTP服务器
smtp_port = 465  # SSL加密端口

# 构建邮件内容
mail_content = """
这是一封来自Python程序的测试邮件
- 发送时间:2025年X月X日
- 状态:自动发送
"""
message = MIMEText(mail_content, "plain", "utf-8")  # 正文内容(纯文本)
message["From"] = sender_email
message["To"] = receiver_email
message["Subject"] = Header("程序执行结果提醒!", "utf-8")  # 邮件主题

try:
    # 连接SMTP服务器
    smtp = smtplib.SMTP_SSL(smtp_server, smtp_port)
    smtp.login(sender_email, password)

    # 发送邮件
    smtp.sendmail(sender_email, receiver_email, message.as_string())
    print("邮件发送成功!")

except Exception as e:
    print(f"发送失败: {str(e)}")
finally:
    smtp.quit()  # 关闭连接

 

posted @ 2025-03-13 09:14  eliwang  阅读(46)  评论(0)    收藏  举报