ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2020-10-13 21:03:04  阅读:336  来源: 互联网

标签:sir 多测师 sender self smtp send attachment msg 邮件


第一步、进入如下网址申请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()

 

标签:sir,多测师,sender,self,smtp,send,attachment,msg,邮件
来源: https://www.cnblogs.com/xiaolehua/p/13811191.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有