
Hello,
Dans ma démarche progressive de dégooglisation, je me suis attaqué récemment à un gros morceau : Google Docs et Google Drive. L’idée pour moi est de passer à un autre fournisseur cloud. Mais pour les documents Google Docs/Sheets/Slides, un piège subtil de l’écosystème Google lié au format spécifique des fichiers rend difficile leur sauvegarde externe.
Le problème : L’illusion des fichiers locaux
Si vous utilisez le logiciel « Google Drive pour ordinateur » (qui vous monte par exemple un lecteur G: sous Windows), vous avez l’impression que vos fichiers sont là. Vous voyez MonProjet.gdoc ou Compta.gsheet.
Mais essayez de copier ces fichiers (typiquement, lancer une copie miroir par exemple avec un bon vieux FreeFileSync des familles) sur un disque externe ou un autre volume, ce fichier refusera d’être copié. De plus, même si la copie était possible, aucune données utilisable dedans car ce ne sont que des raccourcis JSON de quelques octets pointant vers le web. Du coup, si je coupe mon compte Google demain, je perds le contenu de ces fichiers.
Pour récupérer mes données, j’avais deux choix officiels, tous deux frustrants :
- Google Takeout : pas de Takeout disponible pour le triptyque Docs/Sheets/Slides, mais seuleent un export de l’intégralité du Drive, autrement dit une « soupe » de fichiers zippés dans lesquels je ne suis même pas sûr que la rétroconversion en des fichiers « tangibles » aura été faite .
- L’export manuel : Ouvrir chaque fichier un par un, faire Fichier > Télécharger > Microsoft Word. Pour 10 documents, ça va. Pour 500 documents archivés depuis 10 ans, c’est impossible.
La solution : un script d’export
Je voulais une solution qui :
- Parcourt mes dossiers existants sur mon volume Google Drive
- Convertit chaque fichier Google (
Docs,Sheets,Slides) en son équivalent Office (docx,xlsx,pptx). - Enregistre le fichier converti exactement au même endroit, à côté de l’original (avec un petit suffixe dans son nom pour préciser son origine).
J’ai donc vibe codé sans honte un script PowerShell qui automatise tout ça via l’API Google Drive.
Avant de vous lancer, une limitation technique imposée par Google : Drive refusera de convertir les fichiers trop volumineux. Concrètement, si vous avez une présentation (.gslides) remplie d’images haute définition qui ferait plus de 10 Mo une fois convertie en .pptx, l’exportation échouera. Google coupe la connexion (TimeOut) car la conversion demande trop de ressources sur leurs serveurs.
Donc :
- Le script fonctionnera parfaitement pour 95% de vos fichiers (textes, tableurs, présentations légères).
- Pour les « gros » fichiers (thèses avec images, présentations marketing lourdes), le script affichera une erreur.
- Solution : Ces quelques fichiers devront être ouverts dans le navigateur et téléchargés manuellement (Fichier > Télécharger). C’est le seul moyen.
Tuto : libérez vos données
Ce script utilise l’API officielle. C’est la méthode la plus propre, mais elle demande 5 minutes de configuration initiale.
Étape 1 : Créer vos accès API (OAuth)
Pour que le script puisse « discuter » avec votre Drive, vous devez créer une « application » dans la console Google.
- Rendez-vous sur la Google Cloud Console.
- Créez un Nouveau Projet (nommez-le
ExportDrivePerso). - Dans API et services > Bibliothèque, cherchez et activez l’API Google Drive API.
- Dans l’onglet Écran de consentement OAuth :
- Choisissez Externe.
- Remplissez le nom et votre email.
- Important : Dans la section Utilisateurs tests, ajoutez votre propre adresse Gmail. C’est indispensable pour que cela fonctionne sans validation Google.
- Dans Identifiants > Créer des identifiants > ID client OAuth :
- Type : Application de bureau.Validez. Copiez votre ID Client et votre Code Secret Client.
Étape 2 : Le Script PowerShell
Récupérez le script Export-GoogleShortcuts.ps1 sur ce repo GitHub.
Le script inclut une « recherche floue » (pour trouver les fichiers même si Windows gère mal les caractères spéciaux) et une gestion d’erreur spécifique pour vous signaler les fichiers trop gros.
Étape 3 : Lancer l’export
Ouvrez un terminal PowerShell et lancez la commande suivante (en adaptant les chemins et identifiants) :
powershell.exe -ExecutionPolicy Bypass -File "C:\Scripts\Export-GoogleShortcuts.ps1" `
-RootPath "G:\Mon Drive\Projets" `
-ClientId "VOTRE_CLIENT_ID" `
-ClientSecret "VOTRE_CLIENT_SECRET"
Le Résultat
Le script va parcourir vos dossiers. Vous verrez défiler des -> OK verts pour la majorité des fichiers. Vous verrez peut-être quelques -> ECHEC (Trop volumineux) en magenta. Notez-les : ce sont ceux que vous devrez traiter à la main. Au final, vous obtiendrez des fichiers Rapport_from_gdocs.docx directement exploitables.
Vos données sont enfin libérées et prêtes à être sychronisées avec votre nouveau cloud souverain !
Mangez un cookie pour fêter ce succès.