zoukankan      html  css  js  c++  java
  • Python发送邮件

    #!/user/bin/env python
    # -*-coding:utf-8-*-
    from email.mime.text import MIMEText
    from email.mime.multipart import MIMEMultipart
    from email.mime.image import MIMEImage
    from email.mime.base import MIMEBase
    from email import encoders
    from email.header import Header
    from smtplib import SMTP_SSL
    import smtplib
    
    
    def sendmail(mail_title, mail_content, sender_qq_mail='XXXX@qq.com', receiver='xxxx@qq.com'):
        # qq邮箱smtp服务器
        host_server = 'smtp.qq.com'
        # sender_qq为发件人的qq号码
        sender_qq = '1234567'
        # pwd为qq邮箱的授权码
        pwd = 'wtwlsjhdc'
        # 发件人的邮箱
        sender_qq_mail = sender_qq_mail
        # 收件人邮箱
        receiver = receiver
        # 邮件的正文内容
        mail_content = mail_content
        # 邮件标题
        mail_title = mail_title
    
        # ssl登录
        smtp = SMTP_SSL(host_server)
        # set_debuglevel()是用来调试的。参数值为1表示开启调试模式,参数值为0关闭调试模式
        smtp.set_debuglevel(0)
        smtp.ehlo(host_server)
        smtp.login(sender_qq, pwd)
    
        msg = MIMEText(mail_content, "plain", 'utf-8')
        msg["Subject"] = Header(mail_title, 'utf-8')
        msg["From"] = sender_qq_mail
        msg["To"] = receiver
        smtp.sendmail(sender_qq_mail, receiver, msg.as_string())
        smtp.quit()
    
    
    def sendHtmlEmail(picname):
        sender = '1234567@qq.com'
        receiver = 'xxx@qq.com'
        subject = 'python email test'
        smtpserver = 'smtp.qq.com'
        username = '1234567' #QQ号
        password = 'wtwlsjhdkc'
    
        msgRoot = MIMEMultipart('related')
        msgRoot['Subject'] = '实盘数据加载失败,请注意查看原因!'
    
        msgText = MIMEText('<b>运行失败截图</b> <br><img src="cid:image1"><br>', 'html', 'utf-8')
        msgRoot.attach(msgText)
    
        fp = open(picname, 'rb')
        msgImage = MIMEImage(fp.read())
        fp.close()
    
        msgImage.add_header('Content-ID', '<image1>')
        msgRoot.attach(msgImage)
    
        # ssl登录
        smtp = SMTP_SSL(smtpserver)
        # set_debuglevel()是用来调试的。参数值为1表示开启调试模式,参数值为0关闭调试模式
        smtp.set_debuglevel(0)
        smtp.ehlo(smtpserver)
        smtp.login(username, password)
        smtp.sendmail(sender, receiver, msgRoot.as_string())
        smtp.quit()
        print "Successful"
    
    def sendmailatt(mail_title, mail_content, sender_qq_mail='1234567@qq.com', receiver='xxx@qq.com'):
        # qq邮箱smtp服务器
        host_server = 'smtp.qq.com'
        # sender_qq为发件人的qq号码
        sender_qq = '1234567'
        # pwd为qq邮箱的授权码
        pwd = 'wtwlsjhdc'
        # 发件人的邮箱
        sender_qq_mail = sender_qq_mail
        # 收件人邮箱
        receiver = receiver
        # 邮件的正文内容
        mail_content = mail_content
        # 邮件标题
        mail_title = mail_title
    
        # ssl登录
        smtp = SMTP_SSL(host_server)
        # set_debuglevel()是用来调试的。参数值为1表示开启调试模式,参数值为0关闭调试模式
        smtp.set_debuglevel(0)
        smtp.ehlo(host_server)
        smtp.login(sender_qq, pwd)
    
        msg = MIMEText(mail_content, "plain", 'utf-8')
        msg["Subject"] = Header(mail_title, 'utf-8')
        msg["From"] = sender_qq_mail
        msg["To"] = receiver
    
        # 构造附件
        att = MIMEText(open('h:\\python\\1.jpg', 'rb').read(), 'base64', 'utf-8')
        att["Content-Type"] = 'application/octet-stream'
        att["Content-Disposition"] = 'attachment; filename="1.jpg"'
        msg.attach(att)
        smtp.sendmail(sender_qq_mail, receiver, msg.as_string())
        smtp.quit()
  • 相关阅读:
    【PHP】php重写session的存储机制
    【Javascript】原生js 全特效微博发布面板效果实现
    【Javascript】原生js百叶窗效果的实现及原理介绍
    【jQuery】jquery全屏滚动插件【fullPage.js】API 使用方法总结
    从百度音乐和酷狗音乐的分类想到的
    jQuer __Ajax DOM
    面向对象闭包 继承
    Git
    设计模式
    html5标签大全
  • 原文地址:https://www.cnblogs.com/sprouts/p/7650076.html
Copyright © 2011-2022 走看看