zoukankan      html  css  js  c++  java
  • python发送邮件实例1

    文件形式的邮件

     1 #!/usr/bin/env python3  
     2 #coding: utf-8  
     3 import smtplib  
     4 from email.mime.text import MIMEText  
     5 from email.header import Header  
     6   
     7 sender = '***'  
     8 receiver = '***'  
     9 subject = 'python email test'  
    10 smtpserver = 'smtp.163.com'  
    11 username = '***'  
    12 password = '***'  
    13   
    14 msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8’,单字节字符不需要  
    15 msg['Subject'] = Header(subject, 'utf-8')  
    16   
    17 smtp = smtplib.SMTP()  
    18 smtp.connect('smtp.163.com')  
    19 smtp.login(username, password)  
    20 smtp.sendmail(sender, receiver, msg.as_string())  
    21 smtp.quit()  

    HTML形式的邮件

     1 #!/usr/bin/env python3  
     2 #coding: utf-8  
     3 import smtplib  
     4 from email.mime.text import MIMEText  
     5   
     6 sender = '***'  
     7 receiver = '***'  
     8 subject = 'python email test'  
     9 smtpserver = 'smtp.163.com'  
    10 username = '***'  
    11 password = '***'  
    12   
    13 msg = MIMEText('<html><h1>你好</h1></html>','html','utf-8')  
    14   
    15 msg['Subject'] = subject  
    16   
    17 smtp = smtplib.SMTP()  
    18 smtp.connect('smtp.163.com')  
    19 smtp.login(username, password)  
    20 smtp.sendmail(sender, receiver, msg.as_string())  
    21 smtp.quit()  

    带图片的HTML邮件

     1 #!/usr/bin/env python3  
     2 #coding: utf-8  
     3 import smtplib  
     4 from email.mime.multipart import MIMEMultipart  
     5 from email.mime.text import MIMEText  
     6 from email.mime.image import MIMEImage  
     7   
     8 sender = '***'  
     9 receiver = '***'  
    10 subject = 'python email test'  
    11 smtpserver = 'smtp.163.com'  
    12 username = '***'  
    13 password = '***'  
    14   
    15 msgRoot = MIMEMultipart('related')  
    16 msgRoot['Subject'] = 'test message'  
    17   
    18 msgText = MIMEText('<b>Some <i>HTML</i> text</b> and an image.<br><img src="cid:image1"><br>good!','html','utf-8')  
    19 msgRoot.attach(msgText)  
    20   
    21 fp = open('h:\python\1.jpg', 'rb')  
    22 msgImage = MIMEImage(fp.read())  
    23 fp.close()  
    24   
    25 msgImage.add_header('Content-ID', '<image1>')  
    26 msgRoot.attach(msgImage)  
    27   
    28 smtp = smtplib.SMTP()  
    29 smtp.connect('smtp.163.com')  
    30 smtp.login(username, password)  
    31 smtp.sendmail(sender, receiver, msgRoot.as_string())  
    32 smtp.quit()

    带附件的邮件

     1 #!/usr/bin/env python3  
     2 #coding: utf-8  
     3 import smtplib  
     4 from email.mime.multipart import MIMEMultipart  
     5 from email.mime.text import MIMEText  
     6 from email.mime.image import MIMEImage  
     7   
     8 sender = '***'  
     9 receiver = '***'  
    10 subject = 'python email test'  
    11 smtpserver = 'smtp.163.com'  
    12 username = '***'  
    13 password = '***'  
    14   
    15 msgRoot = MIMEMultipart('related')  
    16 msgRoot['Subject'] = 'test message'  
    17   
    18 #构造附件  
    19 att = MIMEText(open('h:\python\1.jpg', 'rb').read(), 'base64', 'utf-8')  
    20 att["Content-Type"] = 'application/octet-stream'  
    21 att["Content-Disposition"] = 'attachment; filename="1.jpg"'  
    22 msgRoot.attach(att)  
    23           
    24 smtp = smtplib.SMTP()  
    25 smtp.connect('smtp.163.com')  
    26 smtp.login(username, password)  
    27 smtp.sendmail(sender, receiver, msgRoot.as_string())  
    28 smtp.quit() 

    群邮件

     1 #!/usr/bin/env python3  
     2 #coding: utf-8  
     3 import smtplib  
     4 from email.mime.text import MIMEText  
     5   
     6 sender = '***'  
     7 receiver = ['***','****',……]  
     8 subject = 'python email test'  
     9 smtpserver = 'smtp.163.com'  
    10 username = '***'  
    11 password = '***'  
    12   
    13 msg = MIMEText('你好','text','utf-8')  
    14   
    15 msg['Subject'] = subject  
    16   
    17 smtp = smtplib.SMTP()  
    18 smtp.connect('smtp.163.com')  
    19 smtp.login(username, password)  
    20 smtp.sendmail(sender, receiver, msg.as_string())  
    21 smtp.quit()  

    各种元素都包含的邮件

     1 #!/usr/bin/env python3  
     2 #coding: utf-8  
     3 import smtplib  
     4 from email.mime.multipart import MIMEMultipart  
     5 from email.mime.text import MIMEText  
     6 from email.mime.image import MIMEImage  
     7   
     8 sender = '***'  
     9 receiver = '***'  
    10 subject = 'python email test'  
    11 smtpserver = 'smtp.163.com'  
    12 username = '***'  
    13 password = '***'  
    14   
    15 # Create message container - the correct MIME type is multipart/alternative.  
    16 msg = MIMEMultipart('alternative')  
    17 msg['Subject'] = "Link"  
    18   
    19 # Create the body of the message (a plain-text and an HTML version).  
    20 text = "Hi!
    How are you?
    Here is the link you wanted:
    http://www.python.org"  
    21 html = """ 
    22 <html> 
    23   <head></head> 
    24   <body> 
    25     <p>Hi!<br> 
    26        How are you?<br> 
    27        Here is the <a href="http://www.python.org">link</a> you wanted. 
    28     </p> 
    29   </body> 
    30 </html> 
    31 """  
    32   
    33 # Record the MIME types of both parts - text/plain and text/html.  
    34 part1 = MIMEText(text, 'plain')  
    35 part2 = MIMEText(html, 'html')  
    36   
    37 # Attach parts into message container.  
    38 # According to RFC 2046, the last part of a multipart message, in this case  
    39 # the HTML message, is best and preferred.  
    40 msg.attach(part1)  
    41 msg.attach(part2)  
    42 #构造附件  
    43 att = MIMEText(open('h:\python\1.jpg', 'rb').read(), 'base64', 'utf-8')  
    44 att["Content-Type"] = 'application/octet-stream'  
    45 att["Content-Disposition"] = 'attachment; filename="1.jpg"'  
    46 msg.attach(att)  
    47      
    48 smtp = smtplib.SMTP()  
    49 smtp.connect('smtp.163.com')  
    50 smtp.login(username, password)  
    51 smtp.sendmail(sender, receiver, msg.as_string())  
    52 smtp.quit()  

    基于SSL的邮件

     1 #!/usr/bin/env python3  
     2 #coding: utf-8  
     3 import smtplib  
     4 from email.mime.text import MIMEText  
     5 from email.header import Header  
     6 sender = '***'  
     7 receiver = '***'  
     8 subject = 'python email test'  
     9 smtpserver = 'smtp.163.com'  
    10 username = '***'  
    11 password = '***'  
    12   
    13 msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8’,单字节字符不需要  
    14 msg['Subject'] = Header(subject, 'utf-8')  
    15   
    16 smtp = smtplib.SMTP()  
    17 smtp.connect('smtp.163.com')  
    18 smtp.ehlo()  
    19 smtp.starttls()  
    20 smtp.ehlo()  
    21 smtp.set_debuglevel(1)  
    22 smtp.login(username, password)  
    23 smtp.sendmail(sender, receiver, msg.as_string())  
    24 smtp.quit()  
  • 相关阅读:
    with admin option 和 with grant option 的区别 (转)
    压缩数据块
    建表时pctfree和pctused参数作用
    Oracle哪些错误会写进alert日志
    Oracle 差异、增量、零级备份
    模拟原生的promise
    react-loadable 实现组件按需加载
    react 中配置 http-proxy-middleware
    craco 配置 less.module
    ESLint: 'React' was used before it was defined.(no-use-before-define)
  • 原文地址:https://www.cnblogs.com/hushaojun/p/6260635.html
Copyright © 2011-2022 走看看