python 发送中文邮件

发布时间:2019-08-27 08:02:16编辑:auto阅读(2129)

    #!/usr/bin/python

    #coding:utf-8


    #导入smtplib和MIMEText 

    import smtplib

    from email.Header import Header

    from email.MIMEText import MIMEText


    mail_host = 'smtp.163.com'

    mail_user = 'user'

    mail_pass = 'password'

    mail_postfix = '163.com'


    def send_mail(to_list,subject,content):

            me = mail_user+"<"+mail_user+"@"+mail_postfix+">"


             #添加邮件内容  

             #注意,要指定邮件内容的编码为utf-8,否则中文会有乱码  

            msg = MIMEText(content,'plain','utf-8')


            #主题指定utf-8编码,否则中文会有乱码  

            msg['Subject'] = Header(subject,'utf-8')

            msg['From'] = me

            msg['To'] = to_list+"<"+to_list+">"

            try:

                    #发送邮件 

                    s = smtplib.SMTP()

                    s.connect(mail_host)

                    s.login(mail_user,mail_pass)

                    s.sendmail(me,to_list,msg.as_string())

                    s.close()

                    return True

            except Exception,e:

                    print str(e)

                    return False

    if __name__ == "__main__":

            send_mail("to@××", "标题1","测试1")


关键字