Thunderbird imap ディレクトリから大きな (120 MB) テキスト ファイルを処理しており、mbox と正規表現を使用してヘッダーから情報を抽出しようとしています。最終的に例外が発生するまで、プロセスはしばらく実行されます:「TypeError:文字列またはバッファが必要です」。
例外は、次のコードの 5 行目を参照しています。
PAT_EMAIL = re.compile(r"[0-9A-Za-z._-]+\@[0-9A-Za-z._-]+")
temp_list = []
mymbox = mbox("data.txt")
for email in mymbox.values():
from_address = PAT_EMAIL.findall(email["from"])
to_address = PAT_EMAIL.findall(email["to"])
for item in from_address:
temp_list.append(item) #items are added to a temporary list where they are sorted then written to file
私は他の(より小さい)ファイルでコードを実行したので、問題は私のファイルにあると推測しています。ファイルは単なるテキストの集まりのようです。誰かがこれをデバッグするために書き込み方向を教えてもらえますか?