网络编程
位置:首页>> 网络编程>> Python编程>> 如何使用Python发送HTML格式的邮件

如何使用Python发送HTML格式的邮件

作者:xushukui  发布时间:2022-10-01 12:24:02 

标签:Python,发送,HTML,邮件

这篇文章主要介绍了如何使用Python发送HTML格式的邮件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

发送html格式的和普通文本格式差不多,只是MIMEText(content,"html","utf-8"))与MIMEText(content,"plain","utf-8"))格式的区别,格式改一下就行了

Python发送HTML格式的邮件与发送纯文本消息的邮件不同之处就是将MIMEText中_subtype设置为html。具体代码如下:


#"-*- coding: utf-8 -*-"
import smtplib
from email.mime.text import MIMEText

mail_user = raw_input("请输入你的163邮箱: ")
mail_password = raw_input("请输入邮箱授权码: ")
mail_from = raw_input("来自: ")
mail_sub = raw_input("邮件主题: ")
mail_content = raw_input("邮件内容: ") #例如: html格式的: "<a href='http://www.cnblogs.com/xiaowuyi'>小五义</a>"
#mailto_list = raw_input("")  #qq邮箱
mail_host="smtp.163.com"
mail_postfix="163.com"

def sendmail(sub,content):
 me=mail_from+"<"+mail_user+">"
 msg=MIMEText(content,"html","utf-8")
 msg['Subject']=sub
 msg['From']=me
 to_list = map(None, raw_input("发送给: ").split(' '))
 msg['To']=",".join(to_list)
 try:
   server=smtplib.SMTP()
   server.connect(mail_host)
   server.login(mail_user,mail_password)
   server.sendmail(me,to_list,msg.as_string())
   server.close()
   return True
 except Exception,e:
   print str(e)
   return False
if sendmail(mail_sub, mail_content):
 print "done!"
else:
 print "falsed!"

#第二种方法:
#!/usr/bin/python
#-*- coding: utf-8 -*-

from email import encoders
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
import smtplib

mailer_name=raw_input("from: ")
mail_user=raw_input("163 email address: ")
mail_pass=raw_input("邮箱授权码: ")
mail_content=raw_input("content: ")  #邮件内容是html格式的
mail_host="smtp.163.com"
mail_postfix="163.com"

def send_mail(sub,content):
me=mailer_name +"<"+mail_user+">"
msg=MIMEText(content,"html","utf-8")
msg['Subject']=sub
msg['From']=me
to_list = map(None,raw_input("mail_to: ").split(" "))#可以群发
msg['To']=",".join(to_list)
try:
server=smtplib.SMTP()
server.connect(mail_host)
server.login(mail_user,mail_pass)
server.sendmail(me,to_list,msg.as_string())
server.close()
return True
except Exception,e:
print str(e)
return False
if send_mail("邮件",mail_content):
print "done!"
else:
print "failed!"

结果

如何使用Python发送HTML格式的邮件

来源:https://www.cnblogs.com/nyist-xsk/p/8808699.html

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com