email 模块
email 模块:也就是用来写邮件内容的模块。这个内容可以是纯文本、HTML内容、图片、附件等多种形式。
email
每种形式对应的导入方式是这样的:
导入方式
from … import …与直接导入整个 smtplib 模块(import smtplib)不同,这里我们只是从email模块中导入一个或几个函数的做法。
email是其实是一个“包”, 这就要谈到“模块”和“包”的区别了,模块(module)一般是一个文件,而包(package)是一个目录,一个包中可以包含很多个模块,可以说包是“模块打包”组成的。
Python中的包都必须默认包含一个init.py的文件。
init.py控制着包的导入行为。假如这个文件为空,那么我们仅仅导入包的话,就什么都做不了。所以直接import email是行不通的。
所以,我们就需要使用from … import …语句,从email包目录下的【某个文件】引入【需要的对象】。比如从email包下的text文件中引入MIMEText方法。看代码:
构建文本内容
MIMEText()方法需要输入三个参数:文本内容,文本类型和文本编码。
文本参数
代码举例:
举例
结合起来,发邮件编码框架如下:
发邮件编码
更完整的邮件:
从email包引入Header()方法。Header()是用来构建邮件头的。
邮件头
标准邮件需要三个头部信息:From , To 和 Subject ,第三到五行代码就提供了这三个信息。
如果想要写很长的内容,建议先设置一个变量text用来放正文内容。
正文