当我发送电子邮件时,纯文本没有包装。我知道你在一行中不能超过80个字符,否则Gmail会自动中断,这会使文本在手机上看起来很糟糕。我把' html'作为MIMETEXT()中的第二个参数。这包装了文本,但不包含任何Python转义字符。我无法弄清楚如何换行?
代码: 我将MIMEText设置为' html'参数,这似乎包装文本,但在一个块中没有使用任何Python转义字符。
var plorp = ["bbllkw", "oox", "ejjuyyy", "plmiis", "xxxzgpsssa", "xxwwkktt", "znnnnfqknaz", "qqquuhii", "dvvvwz"];
var longest = plorp.reduce((a, b) => a.length > b.length ? a : b, '');
console.log(longest);
问题在message_text中,不知道如何创建换行符,因为\ n不起作用。
def CreateMessageHtml(sender, to, subject, message_text):
msg = MIMEText(message_text,'html')
msg['Subject'] = subject
msg['From'] = sender
msg['To'] = to
return {'raw': base64.urlsafe_b64encode(msg.as_string())}
答案 0 :(得分:0)
尝试使用三引号""" TEXT """
代替三重撇号。试过这个:
mytext = """I'm going \n down down \n down """
print mytext
,输出结果为:
I'm going
down down
down
答案 1 :(得分:0)
在函数CreateMessageHtml中,MIMEText对象采用子类型,即“HTML”。来自文档:https://docs.python.org/2/library/email.mime.html#email.mime.text.MIMEText
class email.mime.text.MIMEText(_text [,_ subtype [,_ charset]]) 模块:email.mime.text
MIMENonMultipart的子类,MIMEText类用于创建主要类型文本的MIME对象。 _text是有效负载的字符串。 _subtype是次要类型,默认为plain。
基于此,您需要传入HTML格式的字符串。所以我将main函数中的dedent_text更改为:
dedent_text='''Hello {},
<p> Thank you for attending our last meeting.</P>
<p>We would like to see you again at our next
event.</p>'''.format(row['First'])
现在,文字包含在带有换行符的手机上。