Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Python パッケージ メールボックスを使用しており、メッセージを抽出してデータを消去しようとしています。大規模なデータベースの場合、サンプル ファイルを使用してコンストラクターを呼び出すことができますが、メッセージを出力しようとするとプログラムがハングするという問題が発生しています。読み込もうとしているファイルが7GBを超えているためだと思います。どうすればこの問題に対処できますか?
メールボックスを手動で分割することを検討してください。この形式は、行ごとに読み取ることで (読み取り専用アクセスのみが必要な場合に限り) 処理が非常に簡単です。また、個々のメッセージを実際に解析するために既存のクラスを使用できます。
mbox フォーマットの定義を調べてください - " From" で始まる行から新しいメールが始まります。これらのマーカーで巨大なファイルを分割し、mailboxパッケージを使用して一度に 1 つのファイルのみを読み取ることができます。
From
mailbox