Python借助smtplib和email库发送邮件的使用方法
今天和大家聊一聊如何使用 Python 来发送邮件。很多人可能不太了解使用 Python 发送邮件的方法,为了让大家能更清楚地了解,今天给大家总结了以下这些内容,希望大家依据这篇文章能够有所收获,接下来我们一起开始学习吧!

Python 能够借助 smtplib 库来发送邮件。Python 也可以利用 email 库来发送邮件。
一、 stmplib 的使用
初始化语法如下:
#先要连接到SMTP服务器
s 等于 smtplib.SMTP,参数为 'smtp.XXXX.com'
#发送邮件,msg是字符串,表示邮件的具体内容。
s 发送邮件,发送的邮件从 from_addr 这个地址发出,发送到 to_addrs 这些地址,发送的内容是 msg 。
#断开连接
s.quit()
二 email 的使用
mime 是多用途互联网邮件扩展,它能扩展邮件的格式。它可以用来支持非 ASCII 编码的文本,也可以支持非文本附件,还能包含多个部分(multi-part)的邮件体。它的消息由消息头和消息体构成,就相当于邮件的邮件头和邮件体,并且中间是用空行来进行分隔的。
邮件头包含发件人(from)、收件人(to)、邮件主题(subject)、接收日期(date)、MIME 版本以及邮件内容类型等信息。这些信息各自被称作一个域,域由域名加上冒号“:”以及信息内容组成,并且域的第一行必须顶头书写。
邮件体有两种类型,分别是 text/plain(纯文本)和 text/html(超文本),这由邮件头的连接类型域来指出。它可以同时存在这两种类型,也可以只存在其中一种。这就是有些邮件既能以超文本格式查看,又能以文本格式查看的原因。邮件体被分成多个段,每个段都有段头和段尾,中间通过空行进行分隔。
multipart 类型包含 3 种,分别是 multipart/related 、multipart/mixed 以及 multipart/alternative 。
发送邮件时可将本机文件一同发送,附件可有 0 个或多个,只要附件总大小不超过邮件服务器声明的最大容量,且在邮件里添加附件需定义 multipart/mixed 段。
如果纯文本和超文本同时存在,那么就需要定义 multipart/alternative。倘若存在内嵌的资源,就需要定义 multipart/related。例如:
创建一个名为 MIMEText 的类,它属于 email.mime.text 模块,需要传入三个参数,分别是 _text、_subtype 和 _charset 。
生成 MIME 对象的主体文本时,_text 用于指定邮件内容,_subtype 用于指定邮件类型,_charset 用于指定编码。
创建一个类为 email.mime.multipart.MIMEMultipart 的对象。
用于生成包含多个部分的邮件体的MIME对象