python自动发邮件总结及实例说明

  • python发邮件需要掌握两个模块的用法,smtplib和email,这俩模块是python自带的,只需import即可使用。
    smtplib模块主要负责发送邮件:是一个发送邮件的动作,连接邮箱服务器,登录邮箱,发送邮件(有发件人,收信人,邮件内容)。
    email模块主要负责构造邮件:指的是邮箱页面显示的一些构造,如发件人,收件人,主题,正文,附件等。
#!/usr/bin/python3 
# smtplib模块主要负责发送邮件:是一个发送邮件的动作,连接邮箱服务器,登录邮箱,发送邮件(有发件人,收信人,邮件内容)。
import smtplib
# email模块主要负责构造邮件:指的是邮箱页面显示的一些构造,如发件人,收件人,主题,正文,附件等
from email.mime.text import MIMEText
from email.header import Header

# =============================
# 定义变量
# =============================
# 第三方 SMTP 服务
mail_host = "smtp.qq.com"  # 设置服务器
mail_user = "172212595@qq.com"  # 用户名
mail_pass = "*******"  # 授权码 qq邮箱获取地址:https://jingyan.baidu.com/article/6079ad0eb14aaa28fe86db5a.html

sender = '172212595@qq.com'  # 发送邮件的邮箱
to_addrs = ['172212595@qq.com']  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱

# =============================
# 配置邮件内容;参考:https://www.cnblogs.com/yufeihlf/p/5726619.html
# =============================
mail_msg = """
<p>Python 邮件发送测试,此处是正文...</p>
<p><a href="http://www.runoob.com">这是一个链接</a></p>
"""
message = MIMEText(mail_msg, 'html', '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()# 实例化SMTP()
    smtpObj.connect(mail_host, 25)  # mail_host 设置服务器;25 为 SMTP 默认端口号
    smtpObj.login(mail_user, mail_pass) # mail_user 发件人用户名;mail_pass 发件人邮箱授权码
    smtpObj.sendmail(sender, to_addrs, message.as_string())# sender 发件人邮箱;to_addrs 邮件接收者地址。多个采用字符串列表['接收地址1','接收地址2','接收地址3',...]单个:'接收地址' ; message 发送的内容
    smtpObj.quit() # 用于结束SMTP会话。
    print("邮件发送成功")
except smtplib.SMTPException:
    print("Error: 无法发送邮件")


参考地址:Python3 SMTP发送邮件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值