• 技术文章 >后端开发 >Python教程

    详解python 发送邮件实例代码

    高洛峰高洛峰2017-02-23 16:41:05原创736
    本篇文章主要介绍了python 发送邮件实例代码,详细的介绍了各种方式发送邮件,包括文件形式的邮件、HTML形式的邮件、带图片的HTML邮件等,有兴趣的可以了解一下。

    python 发送邮件实例

    文件形式的邮件

    #!/usr/bin/env python3 
    #coding: utf-8 
    import smtplib 
    from emailmimetext import MIMEText 
    from emailheader import Header 
     
    sender = '***' 
    receiver = '***' 
    subject = 'python email test' 
    smtpserver = 'smtpcom' 
    username = '***' 
    password = '***' 
     
    msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8',单字节字符不需要 
    msg['Subject'] = Header(subject, 'utf-8') 
     
    smtp = smtplibSMTP() 
    smtpconnect('smtpcom') 
    smtplogin(username, password) 
    smtpsendmail(sender, receiver, msgas_string()) 
    smtpquit()

    HTML形式的邮件

    #!/usr/bin/env python3 
    #coding: utf-8 
    import smtplib 
    from emailmimetext import MIMEText 
     
    sender = '***' 
    receiver = '***' 
    subject = 'python email test' 
    smtpserver = 'smtpcom' 
    username = '***' 
    password = '***' 
     
    msg = MIMEText('<html><h1>你好</h1></html>','html','utf-8') 
     
    msg['Subject'] = subject 
     
    smtp = smtplibSMTP() 
    smtpconnect('smtpcom') 
    smtplogin(username, password) 
    smtpsendmail(sender, receiver, msgas_string()) 
    smtpquit()

    带图片的HTML邮件

    #!/usr/bin/env python3 
    #coding: utf-8 
    import smtplib 
    from emailmimemultipart import MIMEMultipart 
    from emailmimetext import MIMEText 
    from emailmimeimage import MIMEImage 
     
    sender = '***' 
    receiver = '***' 
    subject = 'python email test' 
    smtpserver = 'smtpcom' 
    username = '***' 
    password = '***' 
     
    msgRoot = MIMEMultipart('related') 
    msgRoot['Subject'] = 'test message' 
     
    msgText = MIMEText('<b>Some <i>HTML</i> text</b> and an image<br><img src="cid:image1"><br>good!','html','utf-8') 
    msgRootattach(msgText) 
     
    fp = open('h:\\python\\jpg', 'rb') 
    msgImage = MIMEImage(fpread()) 
    fpclose() 
     
    msgImageadd_header('Content-ID', '<image1>') 
    msgRootattach(msgImage) 
     
    smtp = smtplibSMTP() 
    smtpconnect('smtpcom') 
    smtplogin(username, password) 
    smtpsendmail(sender, receiver, msgRootas_string()) 
    smtpquit()

    带附件的邮件

    #!/usr/bin/env python3 
    #coding: utf-8 
    import smtplib 
    from emailmimemultipart import MIMEMultipart 
    from emailmimetext import MIMEText 
    from emailmimeimage import MIMEImage 
     
    sender = '***' 
    receiver = '***' 
    subject = 'python email test' 
    smtpserver = 'smtpcom' 
    username = '***' 
    password = '***' 
     
    msgRoot = MIMEMultipart('related') 
    msgRoot['Subject'] = 'test message' 
     
    #构造附件 
    att = MIMEText(open('h:\\python\\jpg', 'rb')read(), 'base64', 'utf-8') 
    att["Content-Type"] = 'application/octet-stream' 
    att["Content-Disposition"] = 'attachment; filename="jpg"' 
    msgRootattach(att) 
         
    smtp = smtplibSMTP() 
    smtpconnect('smtpcom') 
    smtplogin(username, password) 
    smtpsendmail(sender, receiver, msgRootas_string()) 
    smtpquit()

    群邮件

    #!/usr/bin/env python3 
    #coding: utf-8 
    import smtplib 
    from emailmimetext import MIMEText 
     
    sender = '***' 
    receiver = ['***','****',……] 
    subject = 'python email test' 
    smtpserver = 'smtpcom' 
    username = '***' 
    password = '***' 
     
    msg = MIMEText('你好','text','utf-8') 
     
    msg['Subject'] = subject 
     
    smtp = smtplibSMTP() 
    smtpconnect('smtpcom') 
    smtplogin(username, password) 
    smtpsendmail(sender, receiver, msgas_string()) 
    smtpquit()

    各种元素都包含的邮件

    #!/usr/bin/env python3 
    #coding: utf-8 
    import smtplib 
    from emailmimemultipart import MIMEMultipart 
    from emailmimetext import MIMEText 
    from emailmimeimage import MIMEImage 
     
    sender = '***' 
    receiver = '***' 
    subject = 'python email test' 
    smtpserver = 'smtpcom' 
    username = '***' 
    password = '***' 
     
    # Create message container - the correct MIME type is multipart/alternative 
    msg = MIMEMultipart('alternative') 
    msg['Subject'] = "Link" 
     
    # Create the body of the message (a plain-text and an HTML version) 
    text = "Hi!\nHow are you?\nHere is the link you wanted:\n//m.sbmmt.com/" 
    html = """\ 
    <html> 
     <head></head> 
     <body> 
      <p>Hi!<br> 
        How are you?<br> 
        Here is the <a href="http://wwwpythonorg">link</a> you wanted 
      </p> 
     </body> 
    </html> 
    """ 
     
    # Record the MIME types of both parts - text/plain and text/html 
    part1 = MIMEText(text, 'plain') 
    part2 = MIMEText(html, 'html') 
     
    # Attach parts into message container 
    # According to RFC 2046, the last part of a multipart message, in this case 
    # the HTML message, is best and preferred 
    msgattach(part1) 
    msgattach(part2) 
    #构造附件 
    att = MIMEText(open('h:\\python\\jpg', 'rb')read(), 'base64', 'utf-8') 
    att["Content-Type"] = 'application/octet-stream' 
    att["Content-Disposition"] = 'attachment; filename="jpg"' 
    msgattach(att) 
       
    smtp = smtplibSMTP() 
    smtpconnect('smtpcom') 
    smtplogin(username, password) 
    smtpsendmail(sender, receiver, msgas_string()) 
    smtpquit()

    基于SSL的邮件

    #!/usr/bin/env python3 
    #coding: utf-8 
    import smtplib 
    from emailmimetext import MIMEText 
    from emailheader import Header 
    sender = '***' 
    receiver = '***' 
    subject = 'python email test' 
    smtpserver = 'smtpcom' 
    username = '***' 
    password = '***' 
     
    msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8',单字节字符不需要 
    msg['Subject'] = Header(subject, 'utf-8') 
     
    smtp = smtplibSMTP() 
    smtpconnect('smtpcom') 
    smtpehlo() 
    smtpstarttls() 
    smtpehlo() 
    smtpset_debuglevel(1) 
    smtplogin(username, password) 
    smtpsendmail(sender, receiver, msgas_string()) 
    smtpquit()

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHP中文网。

    更多详解python 发送邮件实例代码相关文章请关注PHP中文网!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:详解python发送各类邮件的主要方法 下一篇:使用Python3 编写简单信用卡管理程序
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• python虚拟环境配置与管理• 一文搞懂怎么在python中读取和写入CSV文件• 总结分享Python冷门的技巧• Python爬虫超详细讲解• 一文搞懂Python爬虫解析器BeautifulSoup4
    1/1

    PHP中文网