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

    原文地址:http://blog.donews.com/maverick/archive/2007/04/22/1159142.aspx

    下面是用Python发送email的示例。

    #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    import email
    import mimetypes
    from email.MIMEMultipart import MIMEMultipart
    from email.MIMEText import MIMEText
    from email.MIMEImage import MIMEImage
    import smtplib
    
    def sendEmail(authInfo, fromAdd, toAdd, subject, plainText, htmlText):
    
            strFrom = fromAdd
            strTo = ‘, ‘.join(toAdd)
    
            server = authInfo.get(’server’)
            user = authInfo.get(‘user’)
            passwd = authInfo.get(‘password’)
    
            if not (server and user and passwd) :
                    print ‘incomplete login info, exit now’
                    return
    
            # 设定root信息
            msgRoot = MIMEMultipart(‘related’)
            msgRoot['Subject'] = subject
            msgRoot['From'] = strFrom
            msgRoot['To'] = strTo
            msgRoot.preamble = ‘This is a multi-part message in MIME format.’
    
            # Encapsulate the plain and HTML versions of the message body in an
            # ‘alternative’ part, so message agents can decide which they want to display.
            msgAlternative = MIMEMultipart(‘alternative’)
            msgRoot.attach(msgAlternative)
    
            #设定纯文本信息
            msgText = MIMEText(plainText, ‘plain’, ‘utf-8′)
            msgAlternative.attach(msgText)
    
            #设定HTML信息
            msgText = MIMEText(htmlText, ‘html’, ‘utf-8′)
            msgAlternative.attach(msgText)
    
           #设定内置图片信息
            fp = open(‘test.jpg’, ‘rb’)
            msgImage = MIMEImage(fp.read())
            fp.close()
            msgImage.add_header(‘Content-ID’, ‘<image1>’)
            msgRoot.attach(msgImage)
    
           #发送邮件
            smtp = smtplib.SMTP()
           #设定调试级别,依情况而定
            smtp.set_debuglevel(1)
            smtp.connect(server)
            smtp.login(user, passwd)
            smtp.sendmail(strFrom, strTo, msgRoot.as_string())
            smtp.quit()
            return
    
    if __name__ == ‘__main__’ :
            authInfo = {}
            authInfo['server'] = ’smtp.somehost.com’
            authInfo['user'] = ‘username’
            authInfo['password'] = ‘password’
            fromAdd = ‘username@somehost.com’
            toAdd = ['someone@somehost.com', 'other@somehost.com']
            subject = ‘邮件主题’
            plainText = ‘这里是普通文本’
            htmlText = ‘<B>HTML文本</B>’
            sendEmail(authInfo, fromAdd, toAdd, subject, plainText, htmlText)
  • 相关阅读:
    Ynoi 杂题选做
    CSP-S2021 浙江 游记
    P6272 [湖北省队互测2014]没有人的算术
    P5206 [WC2019]数树
    P5405 [CTS2019]氪金手游
    LOJ6679 Unknow
    LOJ3040 「JOISC 2019 Day4」合并
    P6122 [NEERC2016]Mole Tunnels
    三维凸包
    三,四元环计数
  • 原文地址:https://www.cnblogs.com/sunwufan/p/2875006.html
Copyright © 2011-2022 走看看