通过smtplib发送电子邮件时如何在电子邮件内容中添加href链接

问题描述:

我正在通过以下代码发送电子邮件:

I'm sending email through below code:

msg = MIMEText(u'<a href="www.google.com">abc</a>')
msg['Subject'] = 'subject'
msg['From'] = 'xxx'
msg['To'] = 'xxx'

s = smtplib.SMTP(xxx, 25)
s.sendmail(xxx, xxx, msg.as_string())

我想收到的是


abc

我实际上收到了什么是:

what I actually received is:

<a href="www.google.com">abc</a>


您应指定 'html' 作为子类型-

You should specify 'html' as the subtype -

msg = MIMEText(u'<a href="www.google.com">abc</a>','html')

不单独指定子类型,子类型默认为'plain '(纯文本)。来自文档-

Without specifying the subtype separately , the subtype defaults to 'plain' (plain-text). From documentations -


类email.mime.text.MIMEText(_text [,_subtype [,_charset]])

class email.mime.text.MIMEText(_text[, _subtype[, _charset]])

MIMENonMultipart的子类, MIMEText类用于创建主要类型文本的MIME对象。 _text是有效负载的字符串。 _subtype是次要类型,默认为纯文本。

A subclass of MIMENonMultipart, the MIMEText class is used to create MIME objects of major type text. _text is the string for the payload. _subtype is the minor type and defaults to plain.

(强调我的)。