Python笔记:应用Python发邮件

首先要开启SMTP服务,获得服务器授权码,不然无法发送。在这里插入图片描述
SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。
Python对SMTP支持有smtplib和email两个模块,email负责构造邮件,smtplib负责发送邮件。
MIMEText对象(MIMEText(msg_content, 'plain', 'utf-8'))时,第一个参数就是邮件正文,第二个参数是MIME的subtype,传入’plain’表示纯文本,最终的MIME就是’text/plain’,最后一定要用utf-8编码保证多语言兼容性。当然也可以传入htmlg格式文件,如MIMEText(mail_msg, 'html', 'utf-8')mail_msg=‘<p>Python 邮件发送测试...</p><p><http://www.python.org">Python</a></p>’
SMTP协议就是简单的文本命令和响应。login()方法用来登录SMTP服务器,sendmail()方法就是发邮件,可以一次发给多个人,所以可以传入一个list或str(只发给一个人),邮件正文是一个str,as_string()把MIMEText对象变成str

import smtplib
from email.mime.text import MIMEText
from email.header import Header
# from email.utils import parseaddr, formataddr
import time


# def _format_addr(s):
#     name, addr = parseaddr(s)
#     return formataddr((Header(name, 'utf-8').encode(), addr))


# sender是邮件发送人邮箱,passWord是服务器授权码
sender = 'xxx@163.com'
password = 'xxxx'
mail_host = 'smtp.163.com'  # 设置服务器
receivers = ["xxx@qq.com","xxx@qq.com"]


# 发送邮件部分
mail_server = smtplib.SMTP(mail_host, 25)  # SMTP协议默认端口是25
mail_server.set_debuglevel(1)  # 打印出和SMTP服务器交互的所有信息
mail_server.connect(mail_host
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值