Howto : « Sauvegarder un compte Gmail »

logo_gmail.gif

Vous avez probablement entendu parler ces dernières semaines des problèmes que certains utilisateurs de Gmail ont rencontré : la perte de l'intégralité de leurs messages stockés au sein de leur compte !!!

Pour ma part j'utilise Gmail à des fin d'archivage et l'idée de perdre à peu prés 2 ans d'archives m'inquiète un peu 🙁 . J'ai donc mis en oeuvre une technique dont j'avais déjà parlé il y'a quelques temps et j'ai décidé de créer ce petit Howto pour aider ceux qui parmis vous souhaiterais également sauvegarder facilement l'intégralité (ou une partie) de leur compte Gmail.

Suivez ce guide (destiné principalement au utilisateurs de Windows, mais facilement adaptable aux autres OS) étape par étape et tout devrait bien se passer ...

  • nous alons utiliser la librairie Libgmail qui est basée sur le langage Python. Donc la première chose à faire est de télécharger puis d'installer Python sur votre machine. Si vous êtes sous Windows le mieux est de récupérer directement l'iinstalleur (.msi) en cliquant ICI.
  • procédez à l'installation de Python (tâche relativement simple 😉 -> lancez l'installeur, laissez les options par défaut, "suivant", "suivant" ... et le tour est réglé !).
  • il faut ensuite se procurer la librairie Libgmail ainsi que les fichiers d'exemples au sein desquels est inséré le script qui va nous permettre de réaliser la sauvegarde : "archive.py". Afin de faciliter les choses je met à votre disposition une archive qui intègre tout le nécessaire au sein d'un seul et même fichier. Ce dernier est disponible ICI.
  • décompressez le fichier précédemment téléchargé au sein d'un répertoire à la racine de votre disque principal ("C:\backup_Gmail" dans la suite de ce Howto).
  • ouvrez une console DOS ("menu démarer" puis "cmd" puis "entrée" pour ceux qui ne connaissent pas ;-). Placez vous au sein de votre répertoire de sauvegarde ("cd C:\backup_Gmail" pour ceux qui ne connaissent pas 😉 - mais là quand même y'a des lacunes 🙂 ...)
  • tapez "archive.py" et vous allez voir apparraitre le texte suivant :

C:\backup_Gmail>archive.py
WARNING:root:Note: Using currently installed `libgmail` version.
Gmail account name:

  • saisissez votre identifiant Gmail, validez, puis saisissez votre mot de passe
  • vous allez voir apparaitre le menu suivant :

Gmail account name: votre_compte_Gmail
Password:

Please wait, logging in...
Log in successful.

Select folder or label to archive: (Ctrl-C to exit)
Note: *All* pages of results will be archived.
0. inbox
1. starred
2. all
3. drafts
4. sent
5. spam
Choice:code>

  • choisissez les messages que vous souhaitez sauvegarder :
    • inbox : uniquement les messages présents au sein de votre boite de réception ;
    • starred : les messages que vous avez marqué comme "important" ;
    • all : tous les messages présents au sein de votre compte (recommandé) ;
    • drafts : vos brouillons ;
    • sent : les messages envoyés ;
    • spam : les messages classés comme spam (mais là faudrait quand même avoir l'esprit tordu ... ) ;
    • et eventuellement vos propres "tags" si vous en avez créés.
  • aprés validation le téléchargement des messages va s'effectuer. Si vous avez choisi de télécharger la totalité de votre compte vous pouvez aller boire un café 😉 en effet le téléchargement peut prendre un certain temps surtout si vous êtes connecté en 56k et que votre compte Gmail approche des 2Go 😉
  • vous verez, durant le téléchargement, défiler les messages les uns aprés les autres. L'affichage du menu indiquera la fin du téléchargement.
  • si vous listez le contenu du répertoire "C:\backup_Gmail" vous trouverez un fichier portant un nom de la forme : "archive-inbox-xxxxxxxxxxxxx.xx.mbox". Vos message sont tous stockés au sein de ce fichier dans un format de type "mbox" (facilement importable dans tous les VRAIS 😉 logiciels de courrier électronique : Thunderbird, Mutt ...).

En espérant que ce Howto vous sera utile ! En cas de problème n'hésitez pas à me contacter.

Pour en savoir plus sur la librarie Libgmail : libgmail.sourceforge.net

12 réflexions au sujet de « Howto : « Sauvegarder un compte Gmail » »

  1. Bonjour,

    merci pour ce Howto fort pratique. Ca fonctionne très bien, si ce n'est que je ne parviens pas à sauvegarder le dossier contenant mes brouillons.

    Voici le message que j'obtiens :

    110c71b932e56e15 1 test
    110c71b932e56e15 1 test

    110c20161a7e1e5c 1 valentin
    Traceback (most recent call last):
    File "C:\backup_gmail\archive.py", line 74, in
    for msg in thread:
    File "C:\backup_gmail\libgmail.py", line 1334, in __iter__
    self._messages = self._getMessages(self)
    File "C:\backup_gmail\libgmail.py", line 1372, in _getMessages
    result += [GmailMessage(thread, msg, isDraft = isDraft)]
    File "C:\backup_gmail\libgmail.py", line 1420, in __init__
    for attachmentInfo in msgData[MI_ATTACHINFO]]
    TypeError: 'int' object is not iterable

    Peut être avez-vous une idée sur la question.

    Bien cordialement.

    Olivier

  2. Bonjour,

    Tout marche comme prévu juqu'à ce que, en cours de téléchargement, j'ai un message d'erreur (un peu long, je peux vous en adresser la copie écran) qui se termine par "Error : expected string without null bytes". J'ai renouvelé l'opération, même message d'erreur.

    D'autre part je ne vois pas, en cours de téléchargement, de fichier "archive-inbox(...)" dans le répertoire c:\backup_gmail, ni ailleurs... Est-ce normal ?

    Merci.

  3. Bonjour Boisbaudry,

    Malheureusement, et au risque de me répéter, je ne vais pas pouvoir faire grand chose pour ton problème 🙁 .

    Comme je l'ai déjà indiqué un peu plus haut, je pense qu'il est préférable que tu pose ta question directement sur le forum d’aide du projet Libgmail (sur sourceforge).

    Voir à l’adresse suivante : http://sourceforge.net/forum/forum.php?forum_id=388074

    @+ et bon courage !

    /Xavier

  4. Chez-moi, cela ne marche pas, une fois que je rentre mon login et mon mot de passe, j'ai une erreur "400 bad request"
    Ensuite, j'ai "log in successfull" puis "no messages found", or, des messages, il y en a un bon paquet !

    Quelqu'un peut-il m'aider ?

    Merci d'avance

    Xav

  5. excellent !
    depuis le temps que je cherchais a sauvegarder par label !!!
    MERCI
    j'ai pris la dernière archive de libgmail (merci pilou), j'ai mis tous les fichiers en remplacement des vieux dans l'archive zip de xavier et ça marche
    MERCI

  6. Bonjour,

    merci pour cette excellente explication.
    Est ce qu'il y a moyen de les réimporter dans un autre comtpe Gmail ?

  7. Salut à tous...
    Pour sauvegarder vos comptes Gmail, vous avez une appli toute faite et toute prête pour ça... Ca s'appelle Gmail Backup.. On le trouve ici : http://www.gmail-backup.com/
    En plus de sauvegarder vos messages avec leurs tags, vous pouvez réimporter vers un autre compte, et ainsi récupérer les conversations complètes avec leurs tags...
    Que demander de plus... 🙂
    Salut

  8. Salut,

    Merci pour cette info ! Effectivement ça semble plus simple (mais à l'époque où j'ai rédigé ce billet malheureusement cette application n'existait pas :-))

    Ca semble super pratique pour migrer d'un compte Gmail vers un autre !

    Par contre je n'ai pas encore eu le temps de télécharger et de vérifier que tout ça était bien "sain" (pas de Spyware ou autre saloperie du genre). Je ferai ça dès que j'aurai quelques minutes devant moi et si tout est OK j'en ferai profiter tous les lecteurs du blog en publiant un petit billet !

    Encore merci pour l'info !

    /Xavier

Les commentaires sont fermés.