在用python发送邮件时,由于没有编辑器,对于如何插入图片,难免会有困惑。
其实,邮件正文分为两种类型,一种是纯文本(plain),另一种是html。html可以携带图片、表格、颜色、链接等丰富的文本格式。
html里插入图片,其实插入的图片的二进制文件再做Base64编码之后的数据。
在正文html中插入图片base64数据,仍然是用<image>
标签,不同之处是src里的url需要是data:image/png;base64,{image1_base64}
的格式。
附:图片格式与MIME的对照表
格式 | MIME |
---|---|
png | image/png |
jpg/jpeg | image/jpeg |
bmp | image/bmp |
webp | image/webp |
gif | image/gif |
另外需要注意的是,email html支持的css比较有限,并且只支持inline css。具体与email客户端有关。