1、源码如下:

import smtplib
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header# 第三方SMTP服务
mail_host = "smtp.exmail.qq.com"
mail_user = "xxxx@xxx.com"
mail_pass = "xxxx"# 邮件发送/接受地址
sender = "xxxx@xxx.com"
receivers ="xxxx@xxx.com"message = MIMEMultipart('related')
message['From'] = Header("发送者", 'utf-8')
message['To'] = Header("接收者", 'utf-8')
subject = 'Python SMTP 邮件测试'
message['Subject'] = Header(subject, 'utf-8')msgAlternative = MIMEMultipart('alternative')
message.attach(msgAlternative)message_msg = """
<p>Python 邮件发送测试...</p>
<p><a href="http://www.baidu.com">这是一个链接</a></p>
<p>图片示例:</p>
<p><img src="cid:img1"></p>
"""msgAlternative.attach(MIMEText(message_msg, 'html', 'utf-8'))# 指定图片为当前目录
fp = open('xxxx.png', 'rb')
msgImage = MIMEImage(fp.read())
fp.close()# 定义图片ID,再HTML文本中引用
msgImage.add_header('Content-ID', '<img1>')
message.attach(msgImage)try:smtpObj = smtplib.SMTP()smtpObj.connect(mail_host, 25)smtpObj.login(mail_user, mail_pass)smtpObj.sendmail(sender, receivers, message.as_string())print("邮件发送成功")
except smtplib.SMTPException:print("Error: 无法发送邮件")

2、运行后,报TypeError: Could not guess image MIME subtype错误:

3、解决办法:

在指定图片的代码中,添加_subtype参数:

msgImage = MIMEImage(fp.read(), _subtype=False)

4、问题解决:

python SMTP发送带图片的邮件时,报TypeError: Could not guess image MIME subtype错误的解决办法相关推荐

  1. python中发送带附件的邮件,python SMTP实现发送带附件电子邮件

    本文实例为大家分享了python SMTP发送带附件电子邮件的具体代码,供大家参考,具体内容如下 可采用email模块发送电子邮件附件.发送一个未知MIME类型的文件附件其基本思路如下: 1. 构造M ...

  2. 利用Jmail发送带附件的邮件时乱码的解决方案

    今天在利用Jmail发送带附件的邮件时,一直收不到附件,而是得到一些"乱码"如下:This is a multipart message in MIME format. ----N ...

  3. Python SMTP 发送带附件电子邮件

    这里写链接内容 可采用email模块发送电子邮件附件.发送一个未知MIME类型的文件附件其基本思路如下: 1. 构造MIMEMultipart对象做为根容器 2. 构造MIMEText对象做为邮件显示 ...

  4. 【Python实用工具】巧妙利用Python实现发送带附件的邮件

    Python SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. py ...

  5. java发送带图片的邮件代码

    图片目录: 实现代码: /*** 发送带附件的mail** @param subject 邮件标题* @param to 收件人列表* @param cc 抄送人列表* @param bodyText ...

  6. 利用navicat向mysql数据库导入数据时出现1062 - Duplicate entry '0' for key 'PRIMARY'错误的解决办法

    1062 - Duplicate entry '0' for key 'PRIMARY',明明导入的数据值不一样,但错误提示主键已存在,不能插入.不知道为什么有些数据插入不成功,原因我也不知道. 解决 ...

  7. python3发送邮件_Python3使用SMTP发送带附件邮件

    一.设置开启SMTP服务并获取授权码 可以参考第一篇文章,这里不再赘述:[一]https://www.jb51.net/article/142220.htm 二.使用Python3 发送带附件的邮件 ...

  8. 使用Python的smtplib模块发送带附件的邮件

      上一篇文章<使用Python的smtplib模块发送简单邮件>介绍了调用smtplib模块发送包含简单内容的邮件,本文继续学习参考文献1中的发送带附件的邮件的示例代码,同时由于参考文献 ...

  9. python菜谱发送到邮箱_Python菜谱5:发送带附件的邮件

    我们平时需要使用 Python 发送各类邮件,这个需求怎么来实现?答案其实很简单,smtplib 和 email库可以帮忙实现这个需求.smtplib 和 email 的组合可以用来发送各类邮件:普通 ...

  10. python发送qq邮件_python使用SMTP发送qq或sina邮件

    python使用qq邮箱(个人邮箱)发送邮件需开启qq邮箱的SMTP服务 在设置中开启pop3/SMTP服务,返回的密码就是之后代码中登录使用账户密码(在完整代码中标识了出来) 之后出现如下错误 复制 ...

最新文章

  1. Java设计模式-回调函数和观察者模式
  2. windows下django学习笔记(二)--HelloWorld
  3. vba传值调用_小白关于VBA调用Sub传递参数之传值与传址的思考
  4. mysql表格导入java_使用java技术将Excel表格内容导入mysql数据库
  5. 身体有恙,此段时间BLOG暂停更新
  6. 神策数据受邀参加全国 APP 个人信息保护监管会
  7. 微信小程序 保存持久化cookie
  8. python3列表_Python3 列表List(十一)
  9. c语言变量加常量,C语言(二)---常量与变量(示例代码)
  10. 会议系统m900服务器网口灯,【中兴视频会议多点控制单元ZXV10 M900-64MA 今日特卖】价格,厂家,视讯会议系统-搜了网...
  11. 计算机网络机械特性是指,《计算机网络与通信》第1——3章 习题及思考题
  12. 苹果手机壳_潮牌刺绣苹果8 Plus手机壳,让爱机焕然一新
  13. 从零开始系统学习区块链
  14. Python基础教程,Python入门教程(超详细)
  15. 多模态知识图谱构建和推理技术 王萌 东南大学
  16. matlab 最小二乘解超定方程,matlab 超定方程 最小二乘解
  17. java地铁最短_南京地铁最短路径以及最少换乘算法C++不用类
  18. 小飞升值记——(4)
  19. hihocoder 1224 赛车
  20. js隐藏显示div页面方法

热门文章

  1. 牛牛现在有n张扑克牌-字符串
  2. 乐高大颗粒作品23:磁悬浮列车
  3. 阿里云短信服务java发送短信验证码
  4. 神秘消失的Windows 9,如今真被人做出来了
  5. hive查询数据库总条数
  6. SLM2110 600V 2A 逆变电源专用芯片替代IR2110S 移动储能解决方案
  7. 中国科学院大学2019年高等代数考研试题
  8. scrum敏捷开发、敏捷测试,快速迭代实践
  9. 一文读懂HBase的存储模式--BigTable
  10. 黑鲨重装计算机安装无法继续,黑鲨装机大师怎么重装系统 一键装机方法