python邮件发送smtplib使用详解
本文实例为大家分享了python邮件发送smtplib使用具体代码,供大家参考,具体内容如下
文件形式的邮件
#!/usr/bin/envpython3
#coding:utf-8
importsmtplib
fromemail.mime.textimportMIMEText
fromemail.headerimportHeader
sender='***'
receiver='***'
subject='pythonemailtest'
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/envpython3
#coding:utf-8
importsmtplib
fromemail.mime.textimportMIMEText
sender='***'
receiver='***'
subject='pythonemailtest'
smtpserver='smtp.163.com'
username='***'
password='***'
msg=MIMEText('你好
','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/envpython3
#coding:utf-8
importsmtplib
fromemail.mime.multipartimportMIMEMultipart
fromemail.mime.textimportMIMEText
fromemail.mime.imageimportMIMEImage
sender='***'
receiver='***'
subject='pythonemailtest'
smtpserver='smtp.163.com'
username='***'
password='***'
msgRoot=MIMEMultipart('related')
msgRoot['Subject']='testmessage'
msgText=MIMEText('SomeHTMLtextandanimage.
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/envpython3
#coding:utf-8
importsmtplib
fromemail.mime.multipartimportMIMEMultipart
fromemail.mime.textimportMIMEText
fromemail.mime.imageimportMIMEImage
sender='***'
receiver='***'
subject='pythonemailtest'
smtpserver='smtp.163.com'
username='***'
password='***'
msgRoot=MIMEMultipart('related')
msgRoot['Subject']='testmessage'
#构造附件
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/envpython3
#coding:utf-8
importsmtplib
fromemail.mime.textimportMIMEText
sender='***'
receiver=['***','****',……]
subject='pythonemailtest'
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/envpython3
#coding:utf-8
importsmtplib
fromemail.mime.multipartimportMIMEMultipart
fromemail.mime.textimportMIMEText
fromemail.mime.imageimportMIMEImage
sender='***'
receiver='***'
subject='pythonemailtest'
smtpserver='smtp.163.com'
username='***'
password='***'
#Createmessagecontainer-thecorrectMIMEtypeismultipart/alternative.
msg=MIMEMultipart('alternative')
msg['Subject']="Link"
#Createthebodyofthemessage(aplain-textandanHTMLversion).
text="Hi!\nHowareyou?\nHereisthelinkyouwanted:\nhttp://www.python.org"
html="""\
Hi!
Howareyou?
Hereisthelinkyouwanted.
"""
#RecordtheMIMEtypesofbothparts-text/plainandtext/html.
part1=MIMEText(text,'plain')
part2=MIMEText(html,'html')
#Attachpartsintomessagecontainer.
#AccordingtoRFC2046,thelastpartofamultipartmessage,inthiscase
#theHTMLmessage,isbestandpreferred.
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/envpython3
#coding:utf-8
importsmtplib
fromemail.mime.textimportMIMEText
fromemail.headerimportHeader
sender='***'
receiver='***'
subject='pythonemailtest'
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()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。