zoukankan      html  css  js  c++  java
  • python学习笔记(十九)发送邮件

          在python开发项目或者做自动化测试时候,在测试完成后需要将测试结果总结后进行上报,那么我们就可以通过发送邮件来完成这项工作。

         下面我们来看看python中怎么发送邮件的,python中发送邮件可以使用smtplib模块或者yagmail模块,其实yagmail模块里面已经封装了smtplib模块,所以下面我们直接学习下yagmail模块发送邮件。模块可在我的网盘下载:https://pan.baidu.com/s/1hvS78sv6-XOwBLXLOIa5GQ,下载之后pip install yagmail-0.10.212-py2.py3-none-any.whl,然后直接import导入即可。代码如下:

    import yagmail
    username = '123456789@qq.com'  #发送者账号
    passwd = 'xxxxxxxxxxxxxx'    #发送者授权码,如果不需要授权码就写成密码    
    mail = yagmail.SMTP(user=username,
                        password=passwd,
                        host='smtp.qq.com',   #邮箱地址
                        smtp_ssl=True
                        ) #如果用的是qq邮箱或者你们公司的邮箱使用是安全协议的话,需要加上smtp_ssl=True                    
    mail.send(
        to=['123123123@qq.com','16774483@qq.com'], #收件人邮箱,如果多个收件人的话,写成list就行了
        cc='789789789@qq.com',#抄送者邮箱,如果是多人,写成list
        subject='学习发送邮件',#邮件标题
        contents='你好,你今天开心吗?',#邮件正文
        attachments=[r'D:syz_pythoncodeday9签名规则',
                     r'D:syz_pythoncodeday9继承.py']) #发送附件,如果是win10系统,发送时找不到附件就将附件地址写成r'D:\syz_python\code\day9\签名规则'
    print('发送成功')

    当然,我们可以封装成一个函数,使用的时候,直接调用函数,传入邮箱账号密码,收件人,发件人,标题和内容即可。

    import yagmail
    def send_mail(username,passwd,rece,title,cc,content,atta,mail_host = 'smtp.qq.com'):
        mail = yagmail.SMTP(user = username,password = passwd,host = mail_host,smtp_ssl = True)
        mail.send(to = rece,cc = cc,subject = title,contents = content,attachments = atta)
        print('发送成功!')

     

  • 相关阅读:
    isinstance函数
    Django之ORM那些相关操作
    Django ~ 2
    Django ~ 1
    Django详解之models操作
    Django模板语言相关内容
    livevent的几个问题
    客户端,服务器发包走向
    关闭客户端连接的两种情况
    std::vector<Channel2*> m_allChannels;容器,以及如何根据channelid的意义
  • 原文地址:https://www.cnblogs.com/mululu/p/9066189.html
Copyright © 2011-2022 走看看