mailbox oferece interfaces para formatos locais como mbox, Maildir, MH, Babyl e MMDF. Ele organiza a coleção de mensagens, enquanto o pacote email interpreta cabeçalhos e conteúdo MIME.
Percorra uma caixa mbox
import mailbox
box = mailbox.mbox("archive.mbox", create=False)
try:
for message in box:
print(message.get("Subject", "(sem assunto)"))
finally:
box.close()
Separe armazenamento de parsing
O formato define como mensagens são guardadas, não se o conteúdo é confiável. Cabeçalhos podem faltar ou estar malformados, e anexos exigem limites de tamanho e nomes seguros. Não renderize HTML recebido sem sanitização.
Proteja alterações
Ao escrever, use locking conforme o formato e sempre libere com unlock() e close() em um bloco finally. Faça backup antes de conversões e teste cópias grandes. Para acesso remoto, use uma biblioteca de protocolo sem misturar sincronização com parsing.
Continue estudando
Leia também envio de e-mail com o pacote email. A documentação oficial do Python, consultada em 22 de julho de 2026, descreve formatos, locking e representação das mensagens.