GSC-Extractor et GSC-Dataviz: mieux lire la Google Search Console

Lorsque notre site internet a beaucoup de pages, il est assez compliqué à suivre ses performances. La Google Search Console donne énormément d’information, mais il devient de plus en plus difficile de les lire.

Pour mon site principal, DiscoverTheGreentech, c’est devenu vraiment impossible après 500 pages. De puis, j’avais un système de classement particulier avec, par exemple, des articles et des pages appartenant à la même « catégorie » (ex: l’hydrogène), mais n’ayant pas la même structure d’url (ex: les entreprises, qui étaient des articles de blog, et les pages dont l’url parente était /hydrogene/), je ne pouvais pas en avoir une vision globale.

Pour résoudre ce problème, j’ai créé deux outils:

  • le premier, le GSC-Extractor permet d’extraire les données de la Google Search Console et de les formatter à partir d’une table de correspondance, qui permet de les retravailler (par exemple si vous avez changé l’URL des pages entretemps) et, surtout, de leur attribuer des catégories et de les classer par semaine. Le code est disponible là : https://github.com/AlexandreBaumann/GSC-Extractor
  • le second, le GSC-Dataviz permet de lire les données extraites selon plusieurs filtres: la page, la requête, deux types (Type et Cat1) de catégories que vous aurez définies, et les semaines. Vous pourrez également filtrer les données affichées par nombre minimal d’impressions, pour éclaircir. Il est disponible ici: https://github.com/AlexandreBaumann/Data-Viz-GSC

J’explique le code en détails sur le lien suivant: https://pro.alexandrebaumann.com/portfolio/extraction-visualisation-donnees/

Configurer son API

Avant tout, vous devez configurer vos comptes Google pour créer une API qui permettra l’extraction.

Je vous ai fait un tutoriel dans la première partie de cet article :

Tutoriel pour le GSC-Extractor

Maintenant que votre Search Console est configurée, on va pouvoir extraire les données s’y trouvant, mais pas seulement. En effet, nous voulons retravailler ces données de plusieurs façons:

  • Extraire les données par semaine pour pouvoir visualiser l’évolution
  • Consolider les données entre différentes URL, par exemple s’il y a eu une redirection (optionnel)
  • Créer des catégories de pages (optionnel)

J’ai créé un outil faisant cela, disponible ici:

Il se fait en deux étapes: l’extraction, avec weekExtractor.py, puis le retraitement, avec categorize.py.

Extraction

  • Télécharger le programme https://github.com/AlexandreBaumann/GSC-Extractor
  • Installer Python 3 si ce n’est pas déjà fait.
  • Installer les modules nécessaires : « pip install pandas google-auth google-auth-oauthlib« 
  • Créer votre tableau de correspondance (optionnel)
  • Placez le fichier d’informations d’identification de l’API Google dans le dossier approprié (idéalement le même que le programme) et renseignez le chemin pour l’atteindre (ici : KEY_FILE_PATH = r’../projet-gsc-dtg.json’).
  • Renseignez le nom de votre propriété. Ici, il s’agit d’une propriété de domaine : SITE_URL = ‘sc-domain:discoverthegreentech.com’.
  • Renseignez la date de début et le nombre de semaines que vous voulez extraire (ici: extract_gsc_data(‘2023-01-01’, 35 pour 35 semaines à partir du 1er janvier 2023)
  • Exécutez le script en entrant python weekExtractor.py
  • Vous obtenez search_console_data.csv.

Retraitement – catégorisation

  • Renseigner le chemin pour la table de correspondance/remplacement et ce que vous avez extrait de la Google Search Console. (ici search_data = pd.read_csv(‘search_console_data.csv’) et categories_data = pd.read_csv(‘url_replace.csv’) ).
  • Exécuter categorize.py en entrant python categorize.py.
  • C’est fait, vous avez récupéré votre fichier « categorized_data.csv ».

Notez que créer des catégories de pages est souvent très utile. Par exemple, dans Discover The Greentech, j’ai des pages « dossiers » (ex: /hydrogene/utilisations/decarboner-production-acier/ ) et des pages entreprises (ex: /boston-metal-lelectrolyse-pour-decarboner-lacier/ ). Même si elles portent sur le même sujet, leur URL n’a rien à voir. Pour visualiser les progrès de tel ou tel thème, tel ou tel bloc de pages, j’aurai besoin d’une catégorisation spécifique.

Tutoriel pour le GSC-Dataviz

Maintenant, vous avez votre csv correctement formaté sur ce modèle:

WeekQueryPageClicksImpressionsCTRPositionlangTypeCat1
20production d’hydrogène à partir de la biomasse/hydrogene/production/pyrogazeification-pyrolyse-thermolyse-biomasse/040.05.75frDossierHydrogene
20puissance eolienne/enr/energie-eolienne/puissance/040.040.0frDossierEnR
20pyrogazéification biomasse/hydrogene/production/pyrogazeification-pyrolyse-thermolyse-biomasse/040.06.0frDossierHydrogene
20pyrolyse hydrogène/hydrogene/production/pyrogazeification-pyrolyse-thermolyse-biomasse/040.06.5frDossierHydrogene
20qu’est ce que la radioactivité/nucleaire/dangers-et-surete/radioactivite/040.039.25frDossierNucleaire

Le script de GSC-Dataviz utilise React.JS. Il vous suffit de

  1. Installer Node.js et npm si ce n’est pas déjà fait.
  2. télécharger le dossier, https://github.com/AlexandreBaumann/Data-Viz-GSC
  3. l’ouvrir avec un IDE, comme visual studio code,
  4. lancer npm install pour télécharger les dépendances.
  5. placer le csv dans le dossier « public »,
  6. entrer npm run start dans le terminal.

Vous pouvez ensuite accéder à l’application sur un navigateur, avec l’url « localhost:3000 ».

Écran initial

Pour appliquer un filtre: modifiez un champ, puis cliquez sur « Apply filters« . Si vous avez énormément de données, le champ « Query » (= « requête ») peut être un peu lent pour déplier les options. Dans ce cas je recommande de mettre un autre filtre (catégorie, page ou impression min) avant, pour limiter la quantité de données affichées.

Vous pouvez cliquer sur « Reset filters » pour réinitialiser les filtres.