用python自动发邮件_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 = """

Python 邮件发送测试,此处是正文...

这是一个链接

"""

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: 无法发送邮件")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值