zoukankan      html  css  js  c++  java
  • 使用python发邮件

    使用python发邮件

    网上有很多发邮件的例子,本人在网上找了一份,稍加修改后使用

    上源码

    # encoding=utf-8
    
    from email.mime.image import MIMEImage
    from email.mime.multipart import MIMEMultipart
    from email.mime.text import MIMEText
    from email.header import Header
    import smtplib 
    
    class SendEmail:
        def __init__(self, host, user, passwd):
            lInfo = user.split("@")
            self._user = user
            self._account = lInfo[0]
            self._me = self._account + "<" + self._user + ">" 
    
            server = smtplib.SMTP()  
            server.connect(host)  
            server.login(self._account, passwd)
            self._server = server      
          
        def sendTxtMail(self, to_list, sub, content, subtype='html', displayName=''):  
            msg = MIMEText(content, _subtype=subtype, _charset='utf-8')        
            msg['Subject'] = Header(sub, 'utf-8')
            if displayName == '':
                msg['From'] = self._me
            else:
                msg['From'] = Header(displayName, 'utf-8').__str__() + " <" + self._user + ">"
            msg['To'] = ";".join(to_list)  
            try:
                self._server.sendmail(self._me, to_list, msg.as_string())   
                return True  
            except Exception, e:  
                print str(e)  
                return False
    

    主要说下我改动的地方,我这想在发送邮件中带有自己定义的名称,所以在发送函数中最后加了一个参数,使用传入的名称与原邮箱地址拼在一起,放入From字段中,就可以使收件人看到我定义的名称了

    需注意的地方是,给From字段赋值时,最好按邮件标准格式进行编码,即使用email.Header进行编码,然后使用__str__()方法取得编码后的字符串,最后再拼上邮箱地址

    另外,给Subject字段赋值时直接使用了Header对象,是因为我在赋值时并未处理字符串,可直接传给Subject使用。最后再啰嗦一句,我直接给Subject赋普通字符串,邮件发过去后一查邮件源文件,竟也是编码后的,。。。,无语

  • 相关阅读:
    Windows程序员的Linux快捷键
    Handeler的详细解释
    Asp.Net_Mvc_View
    使用脚本方式和使用控件方式来输出Html内容的区别
    当发布时报错: 找不到 obj\Debug\Package\PackageTmp\xxx.aspx 文件
    网路岗v1.2简单使用
    Html.Encode
    Android开发中的错误
    Asp.Net_Mvc_IgnoreRoute
    Linux目录结构
  • 原文地址:https://www.cnblogs.com/fatterbetter/p/4224294.html
Copyright © 2011-2022 走看看