如何通过python将base64图像嵌入到SendGrid电子邮件中?

时间:2016-03-13 19:08:25

标签: python base64 embed html-email sendgrid

根据Sendgrid的this article,支持内联嵌入(Base64编码)。

但是下面的代码不起作用,因为它不显示实际图像,它应该看起来像this

import sendgrid

html = """
<div>
    <p>Taken from wikpedia</p>
    <img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAUA
AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
    9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot" />
</div>
"""
sg = sendgrid.SendGridClient('api_key')
message = sendgrid.Mail()
message.set_html(html)
message.add_to('test@gmail.com')
message.set_from('test2@gmail.com')
message.set_subject('test subject')
print sg.send(message)

我收到的电子邮件如下: enter image description here

1 个答案:

答案 0 :(得分:0)

您的代码可能正在工作,因为正在显示xl = xl_app() r = xl.Range("A1") r.Value = x # or using XLCell c = XLCell.from_range(r) c.options(auto_resize=True).value = x 属性。

但是,Gmail(以及电子邮件中的大多数其他电子邮件客户端cannot display embedded SVG images


不确定您有多少创作自由,但可以使用特殊字符将显示红色•:

alt

<p>Taken from wikpedia <span style="color: red;">•</span></p>