• python基础-发邮件smtp


    先来想下发送邮件需要填写什么,还需要有什么条件
    1.与邮件服务器建立连接,用户名和密码
    2.发邮件:发件人,收件人,主题,内容,附件
    3.发送

     使用第三方邮箱发送邮件

    #! /usr/bin/env python
    #coding=utf-8
    
    import smtplib
    import email.mime.multipart
    import email.mime.text
    
    from email.mime.application import MIMEApplication
    
    '''
    先来想下发送邮件需要填写什么,还需要有什么条件
    1.与邮件服务器建立连接,用户名和密码
    2.发邮件:发件人收件人主题内容附件
    3.发送
    '''
    
    
    
    
    class SendMail:
        
        def send_mail(self, title):
            msg=email.mime.multipart.MIMEMultipart()#生成包含多个邮件体的对象
            msg['from']='huipaodexiong@126.com'
            msg['to']='huipaodexiong@126.com'
            msg['subject']= title
            content='''
            Hi all,
            这是一封huipaodexiong自动化测试发送的邮件
            QQ:xxxxxxx
            博客:http://www.cnblogs.com/R-bear/            
            微信号:xxxxxxx            
            带附件
            '''
            print('成功1')
            #邮件正文,将文件正文当成附件发送,当正文内容很多时,提高效率
            txt=email.mime.text.MIMEText(content)
            msg.attach(txt)
            print('成功2')
            
            #excel附件--固定格式
            xlsxpart = MIMEApplication(open('laohuangli-testcase1.xlsx', 'rb').read())
            xlsxpart.add_header('Content-Disposition', 'attachment', filename='laohuangli-testcase1.xlsx')
            msg.attach(xlsxpart)
    
            #jpg图片附件
            jpgpart = MIMEApplication(open('接口测试框架.jpg', 'rb').read())
            jpgpart.add_header('Content-Disposition', 'attachment', filename='接口测试框架.jpg')
            msg.attach(jpgpart)
            
            
            #发送邮件
            smtp=smtplib
            smtp=smtplib.SMTP()
            smtp.set_debuglevel(1)#设置为调试模式,console中显示
            print('成功3')
            smtp.connect('smtp.126.com','25') #链接服务器,smtp地址+端口
            print('成功4')
            smtp.login('huipaodexiong@126.com','XXXXXXXX') #登录,用户名+密码
            print('成功5')
            smtp.sendmail('huipaodexiong@126.com','huipaodexiong@126.com',str(msg)) #发送,from+to+内容
            smtp.quit()
            print('发送邮件成功')
    
    mail = SendMail()
    mail.send_mail('测试文件')

    结果:

    遇到的问题,需要开启邮箱的服务.

  • 相关阅读:
    新概念英语(1-121)The man in a hat
    新概念英语(1-119)who call out to the thieves in the dark?
    画像分析(1-1)如何为客户画像?
    大数据分析师
    英语词汇(2)fall down,fall off和fall over
    把梳子卖给和尚的故事
    洛谷P1970 花匠(dp)
    2018.10.24模拟赛2解题报告
    2018.10.24模拟赛1解题报告
    洛谷P1941 飞扬的小鸟(背包 dp)
  • 原文地址:https://www.cnblogs.com/R-bear/p/7046392.html
Copyright © 2020-2023  润新知