SEO, Webperf et choses bizarres…

17 Dec 2019

DĂ©terminez vos pages utiles et inutiles au SEO Ă  l'aide de la dataviz

Dans ce billet, nous allons voir ensemble comment dĂ©terminer facilement et rapidement le ratio de pages utiles / inutiles lors d’un crawl. Nous allons-en profiter pour faire une courte introduction sur la data visualisation, et son intĂ©rĂȘt dĂ©jĂ  Ă©vident dans le monde du SEO.

L’identification des pages utiles et inutiles peut se faire Ă  partir de diffĂ©rentes sources :

  • Logs
  • Crawl
  • Sitemaps
  • DonnĂ©es Search Console
  • DonnĂ©es Analytics

Et c’est en croisant ces ensembles de donnĂ©es que nous pouvons observer des dĂ©fauts Ă©vidant ou non en fonction des sites observĂ©s.

Quelques prérequis sont obligatoires :

  • Sitebulb ou n’importe quel crawler capable d’identifier et segmenter la source de vos URLs (trouvĂ©es dans GA ? GSC ? Au crawl ? dans le sitemap ?)
  • Un accĂšs Search Console / Analytics pour cĂąbler le crawler
  • Anaconda avec JupyterLab
  • Le package mattplotlib-venn pour faire de beau diagramme de Venn

Exporter et trier les données Sitebulb

Attention Ă  ne pas oublier de cĂąbler Analytics et la Search Console lors du crawl. On demande aussi l’exploration des sitemaps.

Une fois le crawl terminé, allez dans URL Explorer et ajoutez les colonnes suivantes :

Ensuite, filtrez uniquement vos URLs interne et accessible (Status code 200)

Une fois le tableau mis à jour, exportez vos données.

Avec la limite d’export d’URL de GSC en rĂšgle gĂ©nĂ©rale je fusionne la colonne “Found in Google Analytics” avec “Found in Google Search Analytics”.

Mon tableau prĂȘt Ă  ĂȘtre travaillĂ©, je me retrouve donc avec 3 colonnes :

Place maintenant au jus de cerveau, l’objectif est maintenant de trier correctement l’ensemble des URL afin d’arriver Ă  rĂ©cupĂ©rer 7 valeurs clĂ©s :

  • URLs absentes des sitemaps et inactives : accessible au crawl mais absente des sitemaps et non visible sur GA et GSC
  • URLs absentes des sitemaps et actives : accessible au crawl, prĂ©sent dans GSC ou GA et absente des sitemaps
  • URLs trouvĂ©es dans les sitemaps et inactives : absente du crawl, non visible sur GA et GSC mais trouvĂ© dans les sitemaps
  • URLs trouvĂ©es dans les sitemaps et actives : absente du crawl, visible sur GA ou GSC et trouvĂ© dans les sitemaps
  • URLS inactives : accessible au crawl et trouvĂ© dans les sitemaps mais non visible sur GA et GSC
  • URLs totalement orphelines et inactives : visible uniquement sur GA ou GSC
  • URLs OK : visible GA ou GSC, accessible au crawl et prĂ©sent dans les sitemaps.

À vous de trouver la technique la plus simple afin d’arriver Ă  ce tableau final :

Oh Python mon beau Python !

Il vous reste plus qu’Ă  ouvrir JupyterLab et insĂ©rer le code suivant :

from matplotlib import pyplot as plt
import numpy as np
from matplotlib_venn import venn3, venn3_circles
plt.figure(figsize=(12,12)) # modifier la taille de l'image
plt.title("Pages Actives et Inactives") # modifier le title
v = venn3(subsets=(251, 8, 49, 1,226,3,634), set_labels = ('URL trouvées au crawl', 'URL trouvées dans les sitemaps', 'URL trouvées dans GA + GSC')) # insérez vos données - attention de bien respecter la structure
c=venn3_circles(subsets = (251, 8, 49, 1,226,3,634), linestyle='dashed', linewidth=1, color="grey") # petit bonus visuel
plt.show()

Pensez bien sĂ»r Ă  insĂ©rer vos donnĂ©es d’URLs en prenant soin de respecter la structure.

Puis… RUN!

Et vous voilĂ  avec un joli graphique tout frais.

D’autres exemples :

La librairie matplotlib permet une personnalisation relativement complĂšte, n’hĂ©sitez pas Ă  explorer !

Quelques autres graphiques sont disponibles sur mon Gists : https://gist.github.com/bKNN

Toujours preneur de vos retours sur Twitter !

XOXO!

Pierrick

commentaires généré par Disqus