Python zamil邮件发送
SMTP(Simple Mail Transfer Protocol)
· 即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。
SMTP 认证
· SMTP 认证,简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机。
· 增加 SMTP 认证的目的是为了使用户避免受到垃圾邮件的侵扰。
smtplib模块
Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。
Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。
此方法过于麻烦,所以我们学习使用zamil发送邮件。zmail模块只支持Python3模块,该模块为第3方模块,需自行安装
zmail优点
- 自动查找服务器自地址及其端口
- 自动使用合适的协议登录
- 自动将python字典转换为MIME对象(带附件)
- 自动添加邮件标题和本地名称,以避免服务器拒绝您的邮件
- 轻松自定义邮件标题
- 支持HTML作为邮件内容
- 只需要python> = 3.5,您可以将其嵌入到项目中而无需其他模块
zmail使用
1、安装zmail
pip install zmail
2.获取相关邮箱的SMTP服务
3.使用zmail模块发送纯文本邮件
import zmail
# 你的邮件内容
mail_content = {
'subject': 'Success!', # 邮件标题
'content_text': 'This message from zmail!', # 邮件正文
}
# 使用你的邮件账户名和密码登录服务器
server = zmail.server('122712084@qq.com',"dwaethehbheh")
# 发送邮件 # 如果有多个收件人,则用列表
server.send_mail('hn_daxiong@163.com', mail_content)
4.使用zmaill模块发送带附件的邮件
发送带附件邮件代码
只需要加上一个attachments键值即可
import zmail
# 你的邮件内容
mail_content = {
'subject': 'Success!', # 随便填写
'content_text': 'This message from zmail!', # 随便填写
'attachments':"c:\\1.jpg"
}
# 使用你的邮件账户名和密码登录服务器
server = zmail.server('122712084@qq.com',"dwablkwethehbheh")
# 发送邮件
server.send_mail('hn_daxiong@163.com', mail_content)