换行符消失

时间:2014-07-29 17:42:57

标签: python vim character-encoding newline imapclient

我遇到的问题是,当我从Microsoft Outlook网络邮件帐户下载电子邮件时,有时换行字符会消失,导致onelongunbrokenline。但有时候只是。以下是我正在处理的例子:

从Microsoft Outlook Web App下载的原始邮件正文(包括美元符号,因为我有:在vim中设置列表):

狼吞虎咽$
这是一封带有$
的消息 多行$
$
你好$

我实际上最终收到的消息正文(也有:在vim中设置列表):

GobbleThis是一条带有多条线的消息^ M $
你好^我^ I ^ I ^ I ^ I = ^ M $

这里显然还有其他一些事情我也不明白 - 标签(^ I)字符来自哪里?那等于来自哪里?

以下是执行下载的代码(使用python库IMAPClient):

## Connect, login and select the INBOX
server = IMAPClient(HOST, use_uid=True, ssl=ssl)
server.login(USERNAME, PASSWORD)
select_info = server.select_folder('INBOX')

#Get messages since a certain time:
message_list = server.search(['SINCE %s' % cutoff.strftime('%d-%b-%Y')])
response = server.fetch(message_list, ['RFC822'])

for msgid, data in response.iteritems(): 
    msg_string = data['RFC822'].__str__()
    msg = email.message_from_string(msg_string)
    payload = msg.get_payload()
    body = payload
    print body

0 个答案:

没有答案