如何用Python发邮件

 我来答
又擲彝猜僭僦Au
2017-11-06 · TA获得超过6323个赞
知道大有可为答主
回答量:2305
采纳率:14%
帮助的人:510万
展开全部

文件形式的邮件

[python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.text import MIMEText  

  • from email.header import Header  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • username = '***'  

  • password = '***'  

  • msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8’,单字节字符不需要  

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

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

  • HTML形式的邮件

    [python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.text import MIMEText  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • username = '***'  

  • password = '***'  

  • msg = MIMEText('<html><h1>你好</h1></html>','html','utf-8')  

  • msg['Subject'] = subject  

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

  • 带图片的HTML邮件

    [python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.multipart import MIMEMultipart  

  • from email.mime.text import MIMEText  

  • from email.mime.image import MIMEImage  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • 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')  

  • msgRoot.attach(msgText)  

  • fp = open('h:\\python\\1.jpg', 'rb')  

  • msgImage = MIMEImage(fp.read())  

  • fp.close()  

  • msgImage.add_header('Content-ID', '<image1>')  

  • msgRoot.attach(msgImage)  

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msgRoot.as_string())  

  • smtp.quit()  

  • 带附件的邮件

    [python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.multipart import MIMEMultipart  

  • from email.mime.text import MIMEText  

  • from email.mime.image import MIMEImage  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • username = '***'  

  • password = '***'  

  • msgRoot = MIMEMultipart('related')  

  • msgRoot['Subject'] = 'test message'  

  • #构造附件  

  • att = MIMEText(open('h:\\python\\1.jpg', 'rb').read(), 'base64', 'utf-8')  

  • att["Content-Type"] = 'application/octet-stream'  

  • att["Content-Disposition"] = 'attachment; filename="1.jpg"'  

  • msgRoot.attach(att)  

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msgRoot.as_string())  

  • smtp.quit()  

  • 群邮件

    [python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.text import MIMEText  

  • sender = '***'  

  • receiver = ['***','****',……]  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • username = '***'  

  • password = '***'  

  • msg = MIMEText('你好','text','utf-8')  

  • msg['Subject'] = subject  

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

  • 各种元素都包含的邮件

    [python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.multipart import MIMEMultipart  

  • from email.mime.text import MIMEText  

  • from email.mime.image import MIMEImage  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • 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:\nhttp://www.python.org"  

  • html = """\ 

  • <html> 

  • <head></head> 

  • <body> 

  • <p>Hi!<br> 

  • How are you?<br> 

  • Here is the <a href="http://www.python.org">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.  

  • msg.attach(part1)  

  • msg.attach(part2)  

  • #构造附件  

  • att = MIMEText(open('h:\\python\\1.jpg', 'rb').read(), 'base64', 'utf-8')  

  • att["Content-Type"] = 'application/octet-stream'  

  • att["Content-Disposition"] = 'attachment; filename="1.jpg"'  

  • msg.attach(att)  

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

  • 基于SSL的邮件

    [python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.text import MIMEText  

  • from email.header import Header  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • username = '***'  

  • password = '***'  

  • msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8’,单字节字符不需要  

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

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.ehlo()  

  • smtp.starttls()  

  • smtp.ehlo()  

  • smtp.set_debuglevel(1)  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

    文件形式的邮件

    [python] view plaincopy

    HTML形式的邮件

    [python] view plaincopy

    带图片的HTML邮件

    [python] view plaincopy

    带附件的邮件

    [python] view plaincopy

    群邮件

    [python] view plaincopy

    各种元素都包含的邮件

    [python] view plaincopy

    基于SSL的邮件

    [python] view plaincopy

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.text import MIMEText  

  • from email.header import Header  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • username = '***'  

  • password = '***'  

  • msg = MIMEText('你好','text','utf-8')#中文需参数‘utf-8’,单字节字符不需要  

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

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.ehlo()  

  • smtp.starttls()  

  • smtp.ehlo()  

  • smtp.set_debuglevel(1)  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.multipart import MIMEMultipart  

  • from email.mime.text import MIMEText  

  • from email.mime.image import MIMEImage  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • 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:\nhttp://www.python.org"  

  • html = """\ 

  • <html> 

  • <head></head> 

  • <body> 

  • <p>Hi!<br> 

  • How are you?<br> 

  • Here is the <a href="http://www.python.org">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.  

  • msg.attach(part1)  

  • msg.attach(part2)  

  • #构造附件  

  • att = MIMEText(open('h:\\python\\1.jpg', 'rb').read(), 'base64', 'utf-8')  

  • att["Content-Type"] = 'application/octet-stream'  

  • att["Content-Disposition"] = 'attachment; filename="1.jpg"'  

  • msg.attach(att)  

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.text import MIMEText  

  • sender = '***'  

  • receiver = ['***','****',……]  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

  • username = '***'  

  • password = '***'  

  • msg = MIMEText('你好','text','utf-8')  

  • msg['Subject'] = subject  

  • smtp = smtplib.SMTP()  

  • smtp.connect('smtp.163.com')  

  • smtp.login(username, password)  

  • smtp.sendmail(sender, receiver, msg.as_string())  

  • smtp.quit()  

  • #!/usr/bin/env python3  

  • #coding: utf-8  

  • import smtplib  

  • from email.mime.multipart import MIMEMultipart  

  • from email.mime.text import MIMEText  

  • from email.mime.image import MIMEImage  

  • sender = '***'  

  • receiver = '***'  

  • subject = 'python email test'  

  • smtpserver = 'smtp.163.com'  

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式