0

IMAP アカウントを読み取るための Web メール インターフェイスを作成しています。特定の電子メール ヘッダーのデコードに問題があります。

次の From ヘッダーを取得します (イベント メールからの特定の例)。

('"=?UTF-8?B?QmVubnkgQmVuYXNzaQ==?=" <NOREPLY@NOREPLY.LOCKNLOADEVENTS.COM>', None)

最初の部分を分けます:

=?UTF-8?B?QmVubnkgQmVuYXNzaQ==?=

いくつかの調査によると、それは明らかに Base64 でエンコードされた UTF-8 ヘッダーです。

Base64 デコーダーを使用してデコードしようとしました。

# Separate sender name from email itself
first_part = header_text[1:header_text.index('" <')]
print "First part:", first_part

import base64
decoded_first_part = base64.urlsafe_b64decode(first_part)
print decoded_first_part

しかし、私は

TypeError: Incorrect padding.

誰が何が間違っているのかを理解するのを手伝ってくれますか?

ありがとうございました

4

1 に答える 1

0
>>> import base64
>>> base64.decodestring('QmVubnkgQmVuYXNzaQ==')
'Benny Benassi'

しかし、おそらく、これを行うために適切な IMAP ライブラリを使用したいと思うでしょう。

于 2012-11-02T16:19:13.523 に答える