2016-09-25 137 views
0

我已经手动创建并发送了一封Gmail邮件给自己。我希望能够重用这个html输出以编程方式发送它(在python中使用smtplib)。电子邮件中的Unicode编码

在Gmail,我查看源,这看起来像:

MIME的版本:1.0内容类型:多部分/替代; boundary =“ - == _ mimepart_57daadsdas2e101427152ee”; charset = UTF-8 ---- == _ mimepart_57daadsdas2e101427152ee Content-Type:text/plain; charset = UTF-8 Content-Transfer-Encoding:quoted-printable

大家好! = 3D = 3D = 3D = 3D = 3D = 3D = 3D = 3D = 3D = 3D

Venez d = C3 = A9couvrir

我的问题是,当我再尝试发送该内容作为html编程,它不正确显示。我怀疑这是因为unicode转换。例如,我不能将字符“d = C3 = A9couvrir”转换成它应该是的“découvrir”。

任何人都可以帮忙吗?

+0

这2个十六进制代码确实是正确的UTF8表示'急',所以问题在于别处。你的代码发送它在哪里? – usr2564301

回答

1

有一些MIME examples这可能是更合适的,但是从标题简单的答案是,它是UTF8和quoted-printable编码,因此你可以使用quopri模块:

>>> quopri.decodestring('Venez d=C3=A9couvrir').decode('utf8') 
'Venez découvrir'