HTML代码中不必要的感叹号(!)

use*_*103 3 html python email html-email

我 使用下面的代码通过电子邮件发送文本文件"gerrit.txt"@ http://pastie.org/8289257的内容,但是当我查看源代码发送电子邮件后(@ http:// outlook中的电子邮件的pastie.org/8289379)我在代码中看到不必要的惊叹号(!),这会弄乱输出,任何人都可以提供输入,为什么会如此以及如何避免这种情况?

from email.mime.text import MIMEText
from smtplib import SMTP

def email (body,subject):
    msg = MIMEText("%s" % body, 'html')
    msg['Content-Type'] = "text/html; charset=UTF8"
    msg['Subject'] = subject
    s = SMTP('localhost',25)
    s.sendmail('userid@company.com', ['userid2@company.com'],msg=msg.as_string())

def main ():
    # open gerrit.txt and read the content into body
    with open('gerrit.txt', 'r') as f:
        body = f.read()
    subject = "test email"
    email(body,subject)
    print "Done"

if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

Mur*_*rlu 7

这里有一些信息:http://bugs.python.org/issue6327

请注意,邮件服务器对电子邮件中包含的每一行都有990个字符的限制.如果发送的电子邮件包含长度超过990个字符的行,则这些行将被其他行结束字符细分,这可能会导致电子邮件中的损坏,特别是对于HTML内容.要防止这种情况发生,请在电子邮件中的适当位置添加自己的行结束字符,以确保没有行超过990个字符.

我认为你必须将你的HTML分成几行.您可以使用textwrap.wrap方法.