python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
本文实例讲述了python实现的发送邮件模板。分享给大家供大家参考,具体如下:
##发送普通txt文件(与发送html邮件不同的是邮件内容设置里的type设置为text,下面代码为发送普通邮件的另一种方法)
importsmtplib
importstring
fromemail.mime.textimportMIMEText
fromemail.utilsimportformataddr
host='smtp.263.net'##定义smtp主机
SUBJECT="testsmtplib"#定义邮件主题
TO="xx@xx.com"##邮件接收人
FROM="xxxx@xx.com"##邮件发送人
text="content"#邮件内容
###拼接邮件主体内容
BODY="\r\n".join(("From%s:"%FROM,"To:%s"%TO,"Subject:%s"%SUBJECT,"",text)).encode("utf-8")
server=smtplib.SMTP()#创建smtp对象
server.connect(host,"25")##通过connect方法连接smtp主机
server.starttls()##启动安全传输模式
server.login("xxx@huixxx.com",'GAxxx@xxx')##邮箱账号登录
server.sendmail(FROM,[TO],BODY)
server.quit()##断开smtp连接
发送html邮件
importsmtplib
fromemail.mime.textimportMIMEText
fromemail.utilsimportformataddr
HOST='smtp.263.net'##定义smtp主机
SUBJECT="testsmtplib"#定义邮件主题
TO="xxx@xxx.com"##邮件接收人(可以为一个列表)
FROM="xxx@xxx.com"##邮件发送人
text="content"#邮件内容
defsendmail():
msg=MIMEText(content,_subtype='html',_charset='utf-8')##邮件内容,content邮件内容,plain为邮件类型,charset为字符集
msg['From']=FROM
msg['To']=TO#如果此处为列表(';'.join(to_list))
msg['Subject']=SUBJECT
server=smtplib.SMTP("smtp.263.net",25)
server.login("aa@aa.com.cn","xxxxx")#发送者的用户名和密码
server.sendmail(FROM,TO,msg.as_string())
server.quit()
sendmail()
发送带附件的邮件
fromemail.mime.textimportMIMEText
fromemail.mime.multipartimportMIMEMultipart
importsmtplib
#创建一个带附件的实例
msg=MIMEMultipart()
#构造附件1
file1=MIMEText(open('d:\\123.rar','rb').read(),'base64','utf-8')
file1["Content-Type"]='application/octet-stream'
file1["Content-Disposition"]='attachment;filename="123.doc"'#这里的filename可以任意写,写什么名字,邮件中显示什么名字
msg.attach(file1)
#加邮件头
msg['to']='YYY@YYY.com'
msg['from']='XXX@XXX.com'
msg['subject']='helloworld'#邮件主题
#发送邮件
server=smtplib.SMTP()
server.connect('smtp.XXX.com',"25")
server.login('XXX','XXXXX')#XXX为用户名,XXXXX为密码
server.sendmail(msg['from'],msg['to'],msg.as_string())
server.quit()
发送带图片的邮件
importsmtplib
fromemail.mime.textimportMIMEText
fromemail.mime.multipartimportMIMEMultipart
fromemail.mime.imageimportMIMEImage
msg['From']="XXX@XXX.com"#邮件发件人
msg['To']="YYY@YYY.com"#邮件接收人
msg['Subject']="helloworld"##邮件主题
defaddimg(img_src,imgid):
fp=open(img_src,'rb')
msgImage=MIMEImage(fp.read())
fp.close()
msgImage.add_header('Conteng-ID',imgid)
returnmsgImage##返回msgImage对象
msg_text=MIMEText("""更多关于Python相关内容可查看本站专题:《PythonSocket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。