python 发纯文本的邮件及添加附件邮件。

一、smtplib模块:

主要通过SMTP类与邮件系统进行交互。使用方法如下:

1.实例化一个SMTP对象:

  s = smtplib.SMTP(邮件服务地址,端口号)

  s = smtplib.SMTP_SSL(邮件服务地址,端口号)

2.登陆邮件,权限验证:

  s.login(用户名,密码)

3.发送邮件:

  s.sendmail(发件人邮箱,收件人邮箱,发送内容)

4.断开连接:

  s.close()

二、email模块:

  email模块:支持发送的邮件内容为纯文本、HTML内容、图片、附件。email模块中有几大类来针对不同的邮件内容形式,常用如下:

  MIMEText:(MIME媒体类型)内容形式为纯文本、HTML页面。

  MIMEImage:内容形式为图片。

  MIMEMultupart:多形式组合,可包含文本和附件。

每一类对应的导入方式:

  from email.mime.text import MIMEText

  from email.mime.image import MIMEImage

  from email.mime.multipart import MIMEMultipart

      from email.mime.applicationimport MIMEApplication 


from email.mime.text import MIMEText

class MIMEText(MIMENonMultipart):

    def __init__(self, _text, _subtype='plain', _charset=None, *, policy=None):

    用于生成文本/纯类型MIME文档的类。

  _text  要发送的文本,

_subtype='plain',  默认是plain 类型。

_charset=None  这个编码最好设置成utf-8

MIMENonMultipart    继承MIMEBase      继承message.Message

Message() 类中用:

as_string()  转字符串

attach(payload)  附加 附件

add_header()  添加头部


class MIMEMultipart(MIMEBase):

def __init__(self, _subtype='mixed', boundary=None, _subparts=None,

            *, policy=None,

            **_params):


class MIMEApplication(MIMENonMultipart):

def __init__(self, _data, _subtype='octet-stream',

            _encoder=encoders.encode_base64, *, policy=None, **_params):

你可能感兴趣的:(python 发纯文本的邮件及添加附件邮件。)