美文网首页
python发送邮件

python发送邮件

作者: 慧琴如翌 | 来源:发表于2018-01-13 04:04 被阅读28次

    最近在做接口自动化方面的工作,每次运行完接口都需要打开输出的excel文件,尤其是一下子运行好几个接口的时候,感觉不是很方便,于是想着能不能运行完接口后,将接口运行结果直接发送邮件,在邮件里看结果还是很方便的(至少省去了打开excel文件,嘿嘿)

    在网上一搜索一大堆python发送邮件的教程和案例,唯独没有一个能直接运行就能成功的,真是应了那句话,不是自己体味的人生,宁可不要,好吧。。。

    note:
    1.要想邮箱能够发送自动发送邮件,首先必须打开邮箱的设置-->授权服务(自行百度,这个简单)

    2.发送邮件的代码里,有一个login,需要输入密码,一定记得是授权码的密码啊,而并非邮箱的登录密码,这个纠缠了好久

    #!/usr/bin/python
    
    # -*- coding: UTF-8 -*-
    
    importsmtplib
    
    fromemail.mime.textimportMIMEText
    
    fromemail.headerimportHeader
    
    fromemail.utilsimportformataddr
    
    fromemail.mime.multipartimportMIMEMultipart
    
    # from email.MIMEText import MIMEText
    
    # from email.MIMEMultipart import MIMEMultipart
    
    from_addr='xxxxx@163.com'  #发件人邮箱
    
    to_addr='xxxx@xxxx.com'# 接收邮件,可设置为你的QQ邮箱或者其他邮箱
    
    mail_server='smtp.163.com'   #发件邮箱的服务器
    
    # mail_server = 'smtp.exmail.qq.com'  # 如果发件邮箱是腾讯企业邮,则用这个
    
    mail_port=25   #默认是25,如果使用了SSL,是465
    
    subject='this is subject ooooo'
    
    user = from_addr
    
     password = "********"  #这个密码是发件邮箱的授权码
    
    def mail():
    
    try:
    
    msg=MIMEText(subject,'plain','utf-8')
    
    msg['from']=from_addr
    
    msg['to']=to_addr
    
    msg['subject']=subject
    
    server=smtplib.SMTP()
    
    server.connect(mail_server,mail_port)
    
    server.login(user,password) 
    
    server.sendmail(from_addr,[to_addr],msg.as_string())
    
    server.quit()
    
    returnTrue
    
    exceptException,e:
    
    printstr(e)
    
    returnFalse
    
    ret=mail()
    
    ifret:
    
    print'ok'
    
    else:
    
    print'failed'
    

    相关文章

      网友评论

          本文标题:python发送邮件

          本文链接:https://www.haomeiwen.com/subject/bhgqoxtx.html