1

我正在尝试将电子邮件导入网络应用程序,当在网络应用程序中打开电子邮件时,它会显示如下文本:

"b'您的工单有 x 添加的新通信。\r\n\r\n在客户端门户网站 clientportal.com 上查看此工单\r\n\r\n或者,您可以从移动设备查看工单更新,方法是安装和登录 x 移动应用程序。\r\n \r\n如果您希望在这些消息中收到有关您的票证更新的更多详细信息,请选择接收加密电子邮件。"

我的代码:

                    descr=item.body
                    descr = descr.replace("\r","\\r") 
                    descr = descr.replace("\n","\\n") 
                    descr = descr.encode('ascii', 'ignore')
                    try:
                        gotdata = spitit[3]
                    except IndexError:

我正在尝试从文本之前删除 '\r\n\r\n' 。我也不确定为什么“b”出现在文本的开头。

4

1 回答 1

0

我认为这里有几个问题 - b 问题是源数据的编码问题,因为它被解释为字节数据。您需要正确编码字符串 - 我认为下面应该这样做

descr = item.body.encode('utf-8')

Web 应用程序中出现的换行符有点复杂。首先,您正在使用替换调用转义特殊字符,但如果它们被转义,它们将被读取为字符串而不是特殊字符。此外,\n\r 不是网络语言中的换行符。根据您希望它的表示方式,您可能需要用<br>标签或类似的东西替换换行符以使其正确显示,或者只是将它们完全删除descr.replace("\n","")

于 2019-05-13T14:44:23.053 回答