0

.emlPython 3 を使用してファイルに保存されている電子メールから件名を抽出したい:

ファイルの件名は次のとおりです。

Subject: math340-05 =?UTF-8?B?4oCTIEF1ZmdhYmUgNS4x?=

emailモジュールを使用して名前を解析しようとしましたが、文字列がそのまま返されます。

with open(filename, "r") as f:
    m = email.message_from_file(f)

print(m["Subject"])

どうすればそれをデコードできますか?

4

1 に答える 1

2

それを行う 1 つの方法は、次のemail.header モジュールを使用することです。

import email, email.header
m = email.message_from_string("Subject: math340-05 =?UTF-8?B?4oCTIEF1ZmdhYmUgNS4x?=")
raw_header = email.header.decode_header(m["Subject"])
header = email.header.make_header(raw_header)
print(str(header))
# or for py2: print(unicode(header))

あなたに与える:

math340-05 – アウフガベ 5.1
于 2012-12-08T21:58:33.697 に答える