質問

どのように私はPythonでメールモジュールからemail.Messageクラスからのメッセージインスタンスとしてpoplibと、ダウンロードメールを使用していますか?

私は、データベースへのメッセージの一部を格納し、具体的な情報については、すべての電子メールを分析するプログラムを、書いています。私はhowver添付ファイルのテキスト検索を歩くことは困難であり、テキストとして全体のメールをダウンロードすることができます。

アイデアは、情報のためのメッセージを解析することです。

役に立ちましたか?

解決

FeedParserでサーバから読み出されたメッセージからemail.feedparserオブジェクトを構築するためemail.Messageモジュール内poplibクラスを使用します。

特別ます:

import poplib
import email

pop = poplib.POP3( "server..." )
[establish connection, authenticate, ...]
raw = pop.retr( 1 )
pop.close()

parser = email.parser.FeedParser()
for line in raw[1]:
    parser.feed( str( line+b'\n', 'us-ascii' ) )
message = parser.close()

他のヒント

エイドリアン・プリッソンの答えのような文字セットの問題に対処しません。

import poplib
import email

pop = poplib.POP3( "server..." )
[establish connection, authenticate, ...]
raw = pop.retr( 1 )
pop.close()

message = email.message_from_string('\n'.join(raw[1]))
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top