• 多测师讲解自动化 _邮件发送_高级讲师肖sir


    第一步、进入如下网址申请163邮箱。

    https://mail.163.com/

    第二步、注册完之后登录、点击如下图设置­点击POP3/SMTP/IMAP。

     

    第三步、右侧点击客户端授权密码。

     第四步、点击开启­然后点击重置授权码。

    第五步、按照如下操作编辑短信发送、然后就可以

     

      

    重置授权码了、授权码和密码不要设置为一样的注意点:授权码和密码不一致、用代码连接163邮件服务器就需要用授权码而不是密码。

    第六步、然后把 init 构造函数里面的psw默认参数的值改为你自己设置的授权码

    就可以用如下的代码发送邮件了。

    1#coding=utf‐8
    2import smtplib
    3from email.mime.text import MIMEText
    4from email.mime.text import MIMEText
    5from email.mime.multipart import MIMEMultipart
    6from email.header import Header
    7import os
    8
    9class SendMail:
    10def init (self, send_msg,
    11	smtpserver="smtp.163.com", sender="18617162994@163.com",
    12psw="xxxxxx", receiver="18617162994@163.com", #psw这个为授权码
    13port=25, attachment=None):
    14# self.reportfile = reportfile
    15self.send_msg = send_msg
    16self.smtpserver = smtpserver
    17self.sender = sender
    18self.psw = psw
    19self.receiver = receiver
    20self.port = port
    21self.attachment = attachment
    22
    23def send_mail(self):
    24"""发送最新的测试报告内容"""

    25 #打开测试报告,读取测试报告内容

    26 with open(self.send_msg, "rb") as f:

    27 mail_boday = f.read()

    28 #定义邮件

    29 msg = MIMEMultipart()

    30 msg['subject'] = Header(u"自动化测试报告", 'utf‐8')

    31 msg['From'] = Header(self.sender, 'utf‐8')

    32 msg['To'] = self.receiver

    33

    34 #添加附件

    35 if self.attachment != None:

    36 file_name = self.attachment.split(os.path.sep)[‐1]

    37 att = MIMEText(open(self.attachment, "rb").read(),

    38 "base64", "utf‐8")

    39 att["Content‐Type"] = "application/octet‐stream"

    40 att.add_header('Content‐Disposition', 'attachment',

    41 filename = file_name)

    42 msg.attach(att)

    43

    44 body = MIMEText(mail_boday, _subtype="html", _charset='utf‐8')

    45 msg.attach(body)

    46 smtp = smtplib.SMTP()

    47 smtp.set_debuglevel(1)

    48 smtp.connect(self.smtpserver, self.port)

    49 smtp.starttls()

    50 #用户登录并发送邮件

    51 smtp.login(self.sender, self.psw)

    52 smtp.sendmail(self.sender, self.receiver, msg.as_string())

    53 smtp.quit()

    python3源码

    #coding=utf-8
    import smtplib
    from email.mime.text import MIMEText
    from email.mime.text import MIMEText
    from email.mime.multipart import MIMEMultipart
    from email.header import Header
    import os
    
    class SendMail:
        def __init__(self, send_msg,
                     smtpserver="smtp.163.com", sender="15949613302@163.com", #15949613302@163.com
                     psw="VOQGWBZYNBOAVZGE", receiver="15949613302@163.com",   #psw这个为授权码
                     port=25, attachment=None):
            # self.reportfile = reportfile
            self.send_msg = send_msg
            self.smtpserver = smtpserver
            self.sender = sender
            self.psw = psw
            self.receiver = receiver
            self.port = port
            self.attachment = attachment
    
        def send_mail(self):
            """发送最新的测试报告内容"""
            #打开测试报告,读取测试报告内容
            with open(self.send_msg, "rb") as f:
                mail_boday = f.read()
            #定义邮件
            msg = MIMEMultipart()
            msg['subject'] = Header(u"自动化测试报告", 'utf-8')
            msg['From'] = Header(self.sender, 'utf-8')
            msg['To'] = self.receiver
    
            #添加附件
            if self.attachment != None:
                file_name = self.attachment.split(os.path.sep)[-1]
                att = MIMEText(open(self.attachment, "rb").read(), "base64", "utf-8")
                att["Content-Type"] = "application/octet-stream"
                att.add_header('Content-Disposition', 'attachment', filename = file_name)
                msg.attach(att)
    
            body = MIMEText(mail_boday, _subtype="html", _charset='utf-8')
            msg.attach(body)
            smtp = smtplib.SMTP()
            smtp.set_debuglevel(1)
            smtp.connect(self.smtpserver, self.port)
            #用户登录并发送邮件
            smtp.login(self.sender, self.psw)
            smtp.sendmail(self.sender, self.receiver, msg.as_string())
            smtp.quit()
    

      python2源码

    #coding=utf-8
    import smtplib
    from email.mime.text import MIMEText
    import smtplib
    from email.mime.text import MIMEText
    from email.mime.multipart import MIMEMultipart
    from email.header import Header
    import os

    class SendMail:
    def __init__(self, send_msg,
    smtpserver="smtp.163.com", sender="15949613302163.com", #15949613302@163.com
    psw="xlh.1314", receiver="15949613302@163.com", #psw这个为授权码
    port=25, attachment=None):
    # self.reportfile = reportfile
    self.send_msg = send_msg
    self.smtpserver = smtpserver
    self.sender = sender
    self.psw = psw
    self.receiver = receiver
    self.port = port
    self.attachment = attachment

    def send_mail(self):
    """发送最新的测试报告内容"""
    #打开测试报告,读取测试报告内容
    with open(self.send_msg, "rb") as f:
    mail_boday = f.read()
    #定义邮件
    msg = MIMEMultipart()
    msg['subject'] = Header("自动化测试报告", 'utf-8')
    msg['From'] = Header(self.sender, 'utf-8')
    msg['To'] = self.receiver

    #添加附件
    if self.attachment != None:
    file_name = self.attachment.split(os.path.sep)[-1]
    att = MIMEText(open(self.attachment, "rb").read(), "base64", "utf-8")
    att["Content-Type"] = "application/octet-stream"
    att.add_header('Content-Disposition', 'attachment', filename = file_name)
    msg.attach(att)

    body = MIMEText(mail_boday, _subtype="html", _charset='utf-8')
    msg.attach(body)
    smtp = smtplib.SMTP()
    smtp.set_debuglevel(1)
    smtp.connect(self.smtpserver, self.port)
    smtp.starttls()
    #用户登录并发送邮件
    smtp.login(self.sender, self.psw)
    smtp.sendmail(self.sender, self.receiver, msg.as_string())
    smtp.quit()
  • 相关阅读:
    关于我这个bilibili主题的炫酷博客园css
    WSL(Windows Subsystem for Linux)的安装与使用【OI选手的不二选择】
    JSOI2019 round2 游记
    JSOI2019&12省联考退役记
    Thuwc 2019&Noi WC 2019 游记
    CF284A Cows and Primitive Roots
    CF261B Maxim and Restaurant
    洛谷P5840 [COCI2015]Divljak
    CF1295E Permutation Separation
    CF1295A Display The Number
  • 原文地址:https://www.cnblogs.com/xiaolehua/p/13811191.html
Copyright © 2020-2023  润新知