【问题标题】:Unable to send a mail with an img tag in html using python sendgrid client无法使用 python sendgrid 客户端在 html 中发送带有 img 标签的邮件
【发布时间】:2015-01-21 08:04:57
【问题描述】:

我从客户端收到一个包含 img 标签的 html,例如:

<body>
<b>hello</b>
<img src="http://i.imgur.com/KRnZgXh.jpg">
</body>

我正在尝试使用 sendgrid 发送此 html。

我正在使用 python sendgrid 客户端:

import sendgrid

sg = sendgrid.SendGridClient('user@example.com', 'passwd')    
message = sendgrid.Mail()
message.add_to('Sample User<user@example.com>')
message.set_subject(subject)
message.set_html(content)            
message.set_from('Sample User<user@example.com>')
sg.send(message)  

这不成功 - 邮件没有发送。

我可以使用其他邮件服务(例如 mailgun)发送相同的内容。

【问题讨论】:

  • sg.send 给你任何错误? sg.send 的返回值是什么?
  • 不确定它是否相关,但您的 HTML 格式错误 - 它应该是 &lt;img src="whatever" /&gt;(注意关闭) - 可能是 sendgrid 正在以某种方式解析文档而 img 未解析- 但如果您提供返回的任何错误会有所帮助
  • 嗨,没有提供错误,我猜它在某个地方被阻止了。我试过 没有帮助
  • 您可以通过 sendgrid 发送非 HTML 电子邮件吗?而不是message.set_html(content) 尝试message.set_text('hello')。如果这样可行,那么您很可能正在查看 HTML 问题。您也可以尝试包含 &lt;html&gt; 开始和结束标签。
  • 另外,您可以尝试使用简单的电子邮件地址,即user@example.com 而不是Sample User&lt;user@example.com&gt;

标签: python html email sendgrid


【解决方案1】:

我的建议是前往SendGrid's Code Workshop Tool

可以选择Python库,修改左边的数据,看到右边代码的变化,最后一步导出。

您可以将其用作工作示例,或者只是将其与您正在使用的代码进行比较。

【讨论】:

    猜你喜欢
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 2023-04-10
    • 2016-03-15
    • 1970-01-01
    • 1970-01-01
    • 2018-05-19
    • 2014-11-13
    相关资源
    最近更新 更多