Découvrez GoWitness, un outil puissant pour réaliser automatiquement des captures d’écran de sites web et analyser leur structure visuelle. Dans ce tutoriel, vous allez apprendre à installer, utiliser et exploiter GoWitness efficacement pour vos audits SEO, tests et analyses web.
- Comprendre rapidement l’utilité de GoWitness pour analyser visuellement un site web sans effort
- Savoir installer et prendre en main l’outil même en partant de zéro
- Gagner du temps dans vos audits SEO et techniques grâce à une vision claire et exploitable des pages
Vous avez déjà exploré un site web et voulu voir rapidement à quoi ressemblent toutes ses pages, sans cliquer partout ? C’est exactement là que GoWitness entre en jeu. Cet outil, encore peu connu du grand public, est pourtant une petite pépite dans le monde du web et du SEO technique.
Dans ce tutoriel, vous allez découvrir GoWitness pas à pas. On va prendre le temps de comprendre, tester et manipuler cet outil ensemble. À la fin, vous serez capable de capturer, analyser et exploiter visuellement un site web comme un pro… même si vous débutez.
GoWitness : qu’est-ce que c’est exactement ?
Avant de rentrer dans le terminal, posons les bases.
GoWitness est un outil en ligne de commande (CLI) développé en Go, qui permet de :
- capturer des captures d’écran (screenshots) de pages web
- organiser ces captures dans une base locale
- naviguer facilement dans les résultats via une interface web
- analyser visuellement un site (structure, erreurs, contenus…)

En résumé, GoWitness agit comme un robot qui visite un site à votre place et prend des photos de chaque page.
Pourquoi utiliser GoWitness ?
Vous pourriez vous dire : “Ok, mais à quoi ça sert concrètement ?”. Voici quelques cas d’usage très concrets :
- Audit SEO : repérer les pages cassées ou mal affichées
- Pentest / sécurité : visualiser rapidement des endpoints
- Veille concurrentielle : capturer un site complet
- Debug : vérifier le rendu d’un site après modification
- UX : analyser l’expérience utilisateur visuellement
Imaginez avoir 200 URLs à visiter. Plutôt que de cliquer 200 fois… GoWitness le fait pour vous. Et il prend même des photos.
Installer GoWitness
Passons maintenant à l’installation. Rassurez-vous, on va y aller étape par étape.
Prérequis
Avant toute chose, vous devez avoir Go (Golang) installé sur votre machine.
Pour vérifier :
go version
Si vous voyez une version (ex : go1.22), c’est bon. Sinon, installez Go depuis le site officiel : https://go.dev.
Go, aussi appelé Golang, est un langage de programmation créé par Google pour être à la fois simple, rapide et efficace. Contrairement à d’autres langages complexes, il se lit presque comme de l’anglais et permet de construire des logiciels très robustes sans se perdre dans des détails techniques interminables. C’est un excellent choix pour les débutants car il impose une structure claire et évite les erreurs courantes.
Il est très utilisé lorsque vous avez besoin de créer des outils qui doivent traiter beaucoup de données en même temps ou communiquer sur le Web (comme des serveurs, des API ou des outils de Cloud).
Installation de GoWitness
Avec Go, l’installation est très simple :
go install github.com/sensepost/gowitness@latest
Cette commande télécharge et installe la dernière version de GoWitness (v3).
Une fois terminé, le binaire sera disponible dans :
~/go/bin/gowitness
Pour éviter de taper le chemin complet à chaque fois, ajoutez-le à votre PATH si nécessaire :
export PATH=$PATH:~/go/bin
Et pour rendre ça permanent (Mac/Linux) :
echo 'export PATH=$PATH:~/go/bin' >> ~/.zshrc
source ~/.zshrc
Vérifier l’installation
Testez simplement :
gowitness --help
Si vous voyez apparaître la liste des commandes, félicitations ! GoWitness est installé et prêt à fonctionner.

Premier lancement : capturer un site
Entrons dans le vif du sujet.
Capture simple d’un site
Prenons un exemple concret :
gowitness scan single --url https://example.com
Ce que fait cette commande :
- ouvre la page
- prend une capture d’écran
- stocke le résultat dans une base locale
Simple, efficace. Vous pouvez retrouver la capture d’écran à l’emplacement du terminal ou GoWitness a été lancé dans le dossier Screenshot.
Scanner plusieurs URLs
Imaginons que vous avez une liste d’URLs dans un fichier urls.txt :
https://example.com
https://google.com
https://github.com
Attention : Le fichier urls.txt doit être dans le même chemin que celui de votre terminal. Si le fichier est sur votre bureau (desktop), le terminal doit pointer vers le desktop. Pour ceux qui débutent avec le terminal : Naviguer et se situer dans le terminal.
Ensuite, vous pouvez lancer :
gowitness scan file --file urls.txt
GoWitness va parcourir chaque URL et capturer les pages automatiquement.
Scanner un réseau (pentest ou audit)
GoWitness peut aussi scanner des plages d’IP :
gowitness scan cidr --cidr 192.168.1.0/24
Très pratique pour :
- audits internes
- pentesting
- inventaire réseau
Comprendre le fonctionnement interne
Prenons un moment pour comprendre ce qui se passe vraiment.
Des formations informatique pour tous !
Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…
Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.
Découvrez mes formations Qui suis-je ?Quand vous lancez GoWitness :
- Il ouvre un navigateur headless (sans interface)
- Il charge la page
- Il attend que le contenu soit stable
- Il prend une capture
- Il enregistre les données dans une base SQLite
C’est donc un mélange de :
- navigateur automatisé
- base de données
- moteur de capture
Visualiser les résultats
C’est là que GoWitness devient vraiment intéressant.
Faire un scan de test correct
D’abord placer le chemin de votre terminal sur desktop :
cd desktop
Utilisez ensuite cette commande :
gowitness scan single --url https://google.com --write-db --write-db-uri sqlite://gowitness.sqlite3
--write-db: Indique à GoWitness qu’il doit enregistrer le résultat dans une base.--write-db-uri: Indique quelle base utiliser.
Lancer l’interface web
Après ce scan, vous pouvez lancer :
gowitness report server

Ensuite, ouvrez votre navigateur :
http://localhost:7171
Vous arrivez sur une interface web avec :
- toutes les captures
- les URLs associées
- des filtres
- une navigation simple

Pour arrêter le serveur :
CTRL + C
Explorer les captures
Vous pouvez :
- cliquer sur une capture pour l’agrandir
- voir les métadonnées
- trier par statut HTTP
- rechercher une URL

C’est un peu comme une galerie photo… mais pour vos scans web.
Imaginez que vous scannez un site comme, par exemple, le Créa-blog.
Avec GoWitness, vous pourriez :
- voir toutes les pages en un coup d’œil
- repérer une page cassée visuellement
- détecter un problème de responsive
C’est exactement le genre d’analyse qui peut faire la différence en SEO.
Options avancées (version 3)
GoWitness v3 apporte plusieurs améliorations intéressantes.
Définir un timeout
gowitness scan single --url https://example.com --timeout 10
Utile si un site met du temps à charger.
Définir un user-agent
gowitness scan single --url https://example.com --user-agent "Mozilla/5.0"
Permet de simuler un navigateur spécifique.
Mode silencieux
gowitness scan file --file urls.txt --quiet
Pratique pour les scripts automatisés.
Export des résultats
Vous pouvez exporter vos données pour analyse :
gowitness report export
Idéal pour :
- créer des rapports
- intégrer dans un workflow SEO
- automatiser vos audits
Automatiser GoWitness
Là, on passe à un niveau supérieur.
Exemple de script bash
#!/bin/bash
echo "Scan en cours..."
gowitness scan file --file urls.txt
echo "Lancement du serveur..."
gowitness server
Vous lancez tout en une seule commande.
Intégration avec d’autres outils
GoWitness fonctionne très bien avec :
Exemple :
gau example.com | gowitness scan file
Vous récupérez des URLs + capture automatique = combo puissant.
👉 Pour aller plus loin : Tout savoir sur le Symbole pipe, commande pipeline
Bonnes pratiques
Quelques conseils simples mais essentiels :
- évitez de scanner des sites sans autorisation
- limitez la vitesse pour ne pas surcharger un serveur
- organisez vos scans par projet
- nettoyez régulièrement la base
Tableau récapitulatif des commandes GoWitness
| Catégorie | Commande | Description | Flags importants |
| Scan Unique | gowitness scan single | Capture une seule URL. | -u (url), --write-db |
| Scan Liste | gowitness scan file | Capture une liste d’URLs depuis un fichier. | -f (fichier), --threads |
| Serveur Web | gowitness report server | Lance l’interface de visualisation. | --db-uri, --port |
| Export | gowitness report export | Exporte les résultats (CSV, etc.). | --db-uri, --format |
| Base de données | gowitness db | Outils pour manipuler la base SQLite. | import, export |
GoWitness n’est pas juste un outil technique de plus. C’est un véritable gain de temps pour tous ceux qui travaillent avec le web : développeurs, SEO, pentesters… et même les curieux.
Ce qui le rend puissant, ce n’est pas seulement sa capacité à capturer des pages, mais surtout la vision globale qu’il vous offre. En quelques minutes, vous passez d’une liste d’URLs abstraites à une compréhension visuelle concrète.
Et c’est souvent là que tout change.
Si vous prenez le temps de l’intégrer dans vos habitudes — que ce soit pour vos audits SEO ou vos projets web — vous verrez rapidement la différence.
Alors maintenant, à vous de jouer : lancez votre premier scan… et laissez GoWitness travailler pour vous.
👉 Pour aller plus loin avec les captures d’écran, découvrez comment faire un screenshot d’une page entière.

Fondateur de l’agence Créa-troyes, affiliée France Num
Intervenant en Freelance.
Contactez-moi
