一、檔案形式的郵件
複製程式碼 程式碼如下:
#!/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形式的郵件
msg = MIMEText("</pre>
<h1>你好</h1>
<pre>","html","utf-8")
msg["Subject"] = subject
三、帶圖片的HTML郵件
from email.mime.multipart import MIMEMultipart
from email.mime.image import MIMEImage
msgRoot = MIMEMultipart("related")
msgRoot["Subject"] = "test message"
msgText = MIMEText("<b>Some <i>HTML</i> text</b> and an image.
<img src="cid:image1" />
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", "")
msgRoot.attach(msgImage)
smtp.sendmail(sender, receiver, msgRoot.as_string())
四、帶附件的郵件
#構造附件
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)
五、群郵件
receiver = ["***","****",……]
msg = MIMEText("你好","text","utf-8")
六、各種元素都包含的郵件
# 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 = """\
Hi!
How are you?
"""
# 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)
msg.attach(att)
七、基於SSL的郵件
smtp.ehlo()
smtp.starttls()
smtp.set_debuglevel(1)
一、檔案形式的郵件
複製程式碼 程式碼如下:
#!/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形式的郵件
複製程式碼 程式碼如下:
#!/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("</pre>
<h1>你好</h1>
<pre>","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郵件
複製程式碼 程式碼如下:
#!/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.
<img src="cid:image1" />
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", "")
msgRoot.attach(msgImage)
smtp = smtplib.SMTP()
smtp.connect("smtp.163.com")
smtp.login(username, password)
smtp.sendmail(sender, receiver, msgRoot.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 = "***"
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()
五、群郵件
複製程式碼 程式碼如下:
#!/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"
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 = """\
Hi!
How are you?
"""
# 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的郵件
複製程式碼 程式碼如下:
#!/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()