Tous les articles

Comment convertir un fichier MBOX en CSV (adresses email, noms et nombres de messages)

··3 min de lecture

Pour convertir un fichier MBOX en CSV, ouvrez-le dans l'outil MBOX vers CSV. Il lit uniquement les en-têtes des messages, dans votre navigateur, et liste chaque adresse From, To et Cc avec le nom le plus utilisé, le nombre de messages où elle apparaît, et les dates de première et dernière apparition, prêt à être téléchargé en CSV. Rien n'est envoyé en ligne.

Convertir un fichier MBOX en CSV →

Convertir avec l'outil

  1. Exportez vos emails en .mbox : Google Takeout pour Gmail (choisissez Mail), le module ImportExportTools NG dans Thunderbird, ou Mailbox › Export Mailbox (Boîte aux lettres › Exporter la boîte aux lettres) dans Apple Mail. Décompressez d'abord le téléchargement Takeout.
  2. Ouvrez l'outil MBOX vers CSV et choisissez le fichier .mbox. Plusieurs fichiers ou des messages .eml isolés fonctionnent aussi.
  3. Ajoutez vos propres adresses pour qu'elles soient exclues.
  4. Cliquez sur Extract addresses (extraire les adresses). Un export de plusieurs gigaoctets est lu par morceaux, avec un compteur de progression.
  5. Filtrez les expéditeurs no-reply, ou ne gardez que les personnes à qui vous avez écrit, puis téléchargez le CSV avec les noms, les nombres de messages et les dates de première et dernière apparition.

Convertir avec un script

Ce script n'utilise que la bibliothèque standard de Python. Il décode les noms encodés comme =?UTF-8?Q?Ren=C3=A9?= et compte combien de fois chaque adresse apparaît dans From, To et Cc :

import csv, mailbox, sys
from collections import Counter
from email.header import decode_header, make_header
from email.utils import getaddresses

counts, names = Counter(), {}
for msg in mailbox.mbox(sys.argv[1]):
    fields = [str(make_header(decode_header(v))) for h in ("From", "To", "Cc") for v in msg.get_all(h, [])]
    for name, addr in getaddresses(fields):
        addr = addr.strip().lower()
        if "@" in addr:
            counts[addr] += 1
            names.setdefault(addr, name)

with open("addresses.csv", "w", newline="") as f:
    w = csv.writer(f)
    w.writerow(["email", "name", "messages"])
    for addr, n in counts.most_common():
        w.writerow([addr, names[addr], n])

Enregistrez-le sous mbox2csv.py et lancez python3 mbox2csv.py your-export.mbox. Il lit chaque message, donc un gros export prend du temps.

Pour une liste rapide d'adresses seules, grep fonctionne, mais il rate les en-têtes repliés sur une deuxième ligne et ne décode pas les noms :

grep -E -i "^(From|To|Cc):" export.mbox \
  | grep -E -o "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}" \
  | tr 'A-Z' 'a-z' | sort | uniq -c | sort -rn > addresses.txt

Avant d'utiliser le CSV

  • Retirez vos propres adresses et les expéditeurs automatiques (no-reply, notifications, mailer-daemon).
  • Consentement : avoir échangé des emails avec quelqu'un ne vaut pas consentement au marketing. Voir RGPD et cold email B2B.
  • Ancienneté : les adresses tirées de fils vieux de plusieurs années rebondissent davantage. Voir écrire à une ancienne liste d'emails.

La page d'aide de Takeout de Google (lue le 8 novembre 2026) précise aussi que "each message's labels are preserved in a special X-Gmail-Labels header in your download file" (les libellés de chaque message sont conservés dans un en-tête spécial X-Gmail-Labels de votre fichier téléchargé), que vous pouvez lire avec msg["X-Gmail-Labels"] dans le script si vous voulez filtrer par libellé.

Étape suivante : vérifier les adresses

Importez le CSV sur /verify. Chaque adresse reçoit une vérification de boîte en direct sans envoyer de message, et vous pouvez exporter séparément les lignes valides, risquées et invalides. Les 100 premières vérifications sont gratuites avec une connexion Google, sans carte.

Pro, 39 $ par mois : vérification d'emails illimitée.* Jamais décomptée, jamais coupée. Voir les tarifs.

*Usage raisonnable : les 100 000 premières vérifications du mois à pleine vitesse, puis plus lentement, jamais coupées.

À lire aussi : exporter depuis Gmail les adresses auxquelles vous avez écrit, supprimer les emails en double.

Questions fréquentes

Comment convertir un fichier MBOX en CSV ?

Ouvrez le fichier .mbox dans l'outil MBOX vers CSV, ajoutez vos propres adresses pour qu'elles soient exclues, cliquez sur Extract addresses et téléchargez le CSV. Il fonctionne dans votre navigateur, donc le fichier n'est pas envoyé en ligne.

Le convertisseur lit-il le contenu des emails ?

Non. Il lit uniquement les en-têtes des messages (From, To, Cc et dates) pour construire la liste d'adresses.

Peut-il gérer un gros export Gmail ?

Oui. Un export de plusieurs gigaoctets est lu par morceaux avec un compteur de progression. Décompressez d'abord le téléchargement Takeout.

Puis-je convertir un MBOX en CSV avec un script ?

Oui. Le script Python de cet article n'utilise que la bibliothèque standard (mailbox, email.header, email.utils, csv) et écrit l'email, le nom et le nombre de messages.

Vérifiez vos e-mails pour 39,00 USD/mois, sans coupure

Vérification SMTP réelle de la boîte aux lettres. Sans crédits ni frais par e-mail.

Commencer

Lire l’article original en anglais