1
我解析電子郵件主題並獲取多個字符串(取決於主題長度),從=?UTF-8?B?
開始。這是正常的行爲嗎?我怎樣才能用一種編碼將字符串連接到一個字符串?解析email_message ['Subject']結果3字符串而不是1
email_message = email.message_from_string(raw_email)
print email_message['Subject']
...
=?UTF-8?B?15bXkNeqINeR15PXmden15Qg15HXodeZ16HXmdeqINeR15vXk9eZINec15TXkdeZ158g?=
=?UTF-8?B?157Xk9eV16Ig15TXp9eZ15PXldeTINeU15bXlCDXnNeQINei15XXkdeTINeQ150g15DXoNeZINeo15U=?=
=?UTF-8?B?16nXnSDXlNeo15HXlA==?=
編輯:
subjectDecoded, encoding = decode_header(email.utils.parseaddr(email_message['Subject'])[1])[0]
if encoding==None:
subjectDecodedParsed = email_message['Subject']
print 'I am NOT decoding Subject'
print subjectDecodedParsed
else:
subjectDecodedParsed = subjectDecoded.decode(encoding)
print 'I am decoding subject'
print subjectDecodedParsed.encode('utf8') #<--- Only first line will be presented here
謝謝。我編輯了這個問題。我正在使用email.header,而且我仍然只是打印出第一行 – Segev 2013-05-13 09:57:43
@EXEC_BAD_ACCESS:是的,我也意識到,您會逐行解析它們,並進行更新。你可能想在解碼後的行上使用'u''join()'。 – 2013-05-13 10:00:17
解碼之前我不能加入他們嗎?任何代碼都會非常有幫助。 – Segev 2013-05-13 10:05:09