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)
  • 相关阅读:
    058:表关系之一对一
    057:表关系之一对多
    056:ORM外键删除操作详解
    055:ORM外键使用详解
    054:Meta类中常见配置
    053:Field的常用参数详解:
    052:ORM常用Field详解(3)
    051:ORM常用Field详解(2)
    C#中在WebClient中使用post发送数据实现方法
    C# WebClient类上传和下载文件
  • 原文地址:https://www.cnblogs.com/sunwufan/p/2875006.html
Copyright © 2011-2022 走看看