Python发送邮件——email库、smtplib库的使用
2012-11-12 15:21
423 查看
一、smtplib模块的使用
smtplib库用来发送邮件。需要用到的函数如下:
?
Email库用来处理邮件消息。包括MIME和基于RFC2822的消息文档。
有关MIME的一些知识
RFC2822定义的邮件格式中,邮件体只是单纯的ASCII编码的字符序列,MIME扩展邮件的格式,用以支持非ASCII编码的文本、非文本附件及包含多个部分(multi-part)的邮件体。
MIME消息由消息头、消息体组成,即邮件的邮件头、邮件体。中间以空行进行分隔。
1、邮件头:包括发件人(from)、收件人(to)、邮件主题(subject)、接收日期(date)、MIME版本、邮件内容类型等信息。每条信息称为一个域,由域名后加“:”和信息内容构成,域的首行必须顶头写。
2、邮件体:有text/plain(纯文本)和text/html(超文本)之分,由邮件头的“content type”域指出。可以同时存在,也可以只存在一种。这就是为什么有些邮件既可以用html格式查看,又可以用文本格式查看的原因。邮件体分为多个段,称为Payload。每个段也包括段头段尾,中间以空行分隔。multipart类型有3种:multipart/mixed multipart/related multipart/alternative。邮件里添加附件要定义multipart/mixed段,如果纯文本超文本共存,则要定义multipart/alternative,如存在内嵌资源,要定义multipart/related。
3、附件(attach)。发送邮件时,可以将本机的文件一起发送。附件可以有0个或多个,只要附件的总大小,不超过邮件服务器所声明的最大容量。
class
email.mime.text.MIMEText(_text[, _subtype[, _charset]])
用于生成MIME对象的主体文本:_text指定邮件内容,_subtype指定邮件类型,_charset指定编码。
class
email.mime.multipart.MIMEMultipart()
用于生成包含多个部分的邮件体的MIME对象
三、一些简单示例
1.发送简单文本邮件的示例
?
发送带附件的邮件,首先要创建MIMEMultipart实例,然后构造附件,如果有多个附件,可依次构造。
?
multipart使用alternative类型,这样就可以让客户端来决定显示HTML类型还是text类型。
?
相关文章推荐
- Python发送邮件――email库、smtplib库的使用
- python使用smtplib库和smtp.qq.com邮件服务器发送邮件(转)
- python使用smtplib库和smtp.qq.com邮件服务器发送邮件
- 使用python中的smtplib库,写一个简单的发送qq邮件程序,速成!!
- 使用python smtplib 发送带附件的邮件
- python3使用SMTP发送HTML格式邮件
- python应用系列教程——python使用smtp协议发送邮件:html文本邮件、图片邮件、文件附件邮件
- 使用python通过ssl发送邮件
- Python学习笔记(六) -- Python使用SMTP发送邮件
- 使用Python发送邮件
- python使用MIMEMultipart发送多个附件的邮件
- Python_23_使用SMTP发送邮件
- Python使用SMTP发送邮件(163,yeah等网易邮箱已测试可以)
- 二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)
- 使用Python Tkinter编写的简易发送邮件程序
- python 使用smtp发送群邮件
- Python -- 使用SMTP发送邮件
- Python使用smtplib发送邮件
- python 使用模板模式和工厂模式的混合设计开发各种邮件客户端发送邮件
- python使用smtp发送邮件