发送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格式的邮件(收到的邮件有发送方才是正解)的更多相关文章

  1. [Java] JavaMail 发送 html 格式、带附件的邮件

    本案例演示发送 html 格式,可带附件的邮件发送.发送纯文本邮件的例子可参照上一篇博文JavaMail 简单案例. EmailHelper, Email 的帮助类,向帮助类提供 SMTP 服务器域名 ...

  2. 【SoapUI、Postman、WebServiceStudio、Jmeter】接口测试工具结合测试webservice接口(发送XML格式参数)

    目录: SoapUI测试webservice接口,发送XML格式参数 Postman测试webservice接口,发送XML格式参数 WebServiceStudio.exe测试webservice接 ...

  3. python测试开发django-29.发送html格式邮件

    前言 上一篇已经通过send_mail()函数发送纯文本的邮件,发送成功了,如果我们想发送一个html格式的邮件,如何实现呢? 发送html格式的邮件实际上还是调用send_mail()函数 ,只需多 ...

  4. python 发送邮件(收到的邮件要有发送方才能回复)

    Python使用SMTP(简单邮件传输协议)发送邮件 普通文本邮件 普通文本邮件发送的实现,关键是要将MIMEText中_subtype设置为plain ## -*- coding: UTF-8 -* ...

  5. 一个python的邮件发送脚本,自动,定时,可以附件发送,抄送,附有说明文件

    #!/bin/env python # -*- coding: utf-8 -*- import datetime import smtplib import os,sys from email.mi ...

  6. EBS中使用JAVA方式发送HTML格式邮件

    转自huan.gu专栏:http://blog.csdn.net/gh320/article/details/17174769 EBS中使用JAVA方式发送HTML格式邮件 一.开发工具:JDevel ...

  7. 用Java发送HTML格式邮件测试类(支持中文)

    代码由纯Java写成,支持中文,一目了然,只要将Main函数中的相关信息填写正确就直接用了,便于修改,可以在此类基础上任意扩展成自己的类. 注意做HTML形式的邮件,最好把HTML,CSS都写全,只写 ...

  8. 一个用于发送HTML格式邮件的类

    以下类是在网上孙钰佳的版本上改写而来,主要变化了三点:1.去掉了附件部分:2.形式从纯Java类改成可注入方式:3.to,cc和bcc都变成了一堆人,以前是一个人. 以下是Java类的代码: impo ...

  9. 如何使用python内置的request发送JSON格式的数据

    使用步骤如下: 一.如果想发送json格式的数据,需要使用request模块中的Request类来创建对象,作为urlopen函数的参数 二.header中添加content-type为applica ...

随机推荐

  1. 《C语言程序设计基础I》秋季学习总结

    希望下学期比这学期轻松,学习能力上升,只是越发丰富. 一步一步的走踏实了

  2. C++ Primer 5th 第17章 标准库特殊设施

    C++新标准库提供了很多新功能,它们更加强大和易用. tuple类型 tuple是一种类似pair的模板,pair可以用来保存一对逻辑上有关联的元素对.但与pair不同的是,pair只能存储两个成员, ...

  3. spring-boot-通用mapper

    数据源依赖 druid官方文档:https://github.com/alibaba/druid/wiki/常见问题 <dependency> <groupId>mysql&l ...

  4. linux调试工具glibc的演示分析

    偶然中发现,下面的两端代码表现不一样 void main(){ void* p1 = malloc(32);       free(p1); free(p1); // 这里会报double free ...

  5. MODULE_DEVICE_TABLE (二)【转】

    转自:http://blog.csdn.net/uruita/article/details/7263290 1. MODULE_DEVICE_TABLE (usb, skel_table);该宏生成 ...

  6. 我看到的最棒的Twisted入门教程!

    http://www.douban.com/note/232204441/ http://www.cnblogs.com/sevenyuan/archive/2010/11/18/1880681.ht ...

  7. JavaScript新手学习笔记(一)

    1.JavaScript 对大小写敏感. JavaScript 对大小写是敏感的. 当编写 JavaScript 语句时,请留意是否关闭大小写切换键. 函数 getElementById 与 getE ...

  8. ASP .Net Core系统部署到SUSE 16 Linux Enterprise Server 12 SP2 64 具体方案

    .Net Core 部署到 SUSE 16 Linux Enterprise Server 12 SP2 64 位中的步骤 1.安装工具 1.apache 2..Net Core(dotnet-sdk ...

  9. 使用html+css+js实现魔性的舞蹈

    使用html+css+js实现魔性的舞蹈,让我们燥起来!!! 效果图: 代码如下,复制代码即可使用: <!DOCTYPE html> <html > <head> ...

  10. SQL行列转换的另一种方法

    create table tb(姓名 varchar(10) , 课程 varchar(10) , 分数 int)insert into tb values('张三' , '语文' , 74)inse ...