Home Tutos Tutos SEO Visualiser son maillage interne avec Gephi

Visualiser son maillage interne avec Gephi

22

Parmi les leviers qu’on cite le plus souvent en optimisation on-page, il y a le maillage interne. Quand on a un « petit » site, ce n’est pas difficile de savoir que les pages les plus liées, ce sont les pages qu’on trouve dans la navigation principale.

Mais dès qu’on dépasse un certain nombre de pages, ou que le maillage interne n’est pas créé que par le menu de navigation, ça devient plus compliqué de savoir « qui fait un lien à qui ». Et si on commence à aborder la question de la proximité sémantique entre les pages qui se font des liens (parce qu’on a envie d’optimiser tout ça), c’est la prise de tête garantie pour savoir où on en est exactement.

Heureusement, il existe des outils qui permettent de visualiser tout ça rapidement, facilement, et d’appliquer les fix adéquats s’il y a lieu de le faire. On attaque donc ce tuto avec Gephi.

3 outils indispensables pour visualiser son maillage interne

Pour visualiser son maillage interne, on va avoir besoin de trois logiciels :

  • Screaming Frog ou Xenu pour collecter les URL qui composeront notre tableau de données
  • Excel ou tableur équivalent pour remettre de l’ordre dans les données
  • Gephi, pour transformer les données en représentation visuelle

On commence donc par Screaming-frog…

Récupérer ses URL avec Screaming-Frog

Ultra simple : on télécharge le logiciel, on rentre l’adresse du site qu’on veut crawler dans le champ tout en haut, puis on clique sur « Start ». Quelques minutes plus tard, Screaming-frog a fini de parcourir tout le site.

Il suffit ensuite de cliquer dans le menu « Bulk Export », sous-menu « all outlinks », pour enregistrer tous les liens dans un tableur Excel (au format qui vous intéresse, je prends « XLS » pour plus de facilité). Enregistrez votre fichier Excel, puis lancez-le pour attaquer la phase « nettoyage »…

Exporter ses liens ne prends que quelques minutes
Exporter ses liens ne prends que quelques minutes

Filtrer les données sous Excel

Screaming-Frog a récupéré tout un tas de données lors du crawl, comme par exemple les fichiers CSS ou JS qui sont utilisés sur le site parcouru. Et, évidemment, on n’en a pas besoin, donc on va nettoyer tout ça.

D’abord, on va insérer un tableau sur le tableur, ça va être plus pratique pour la suite. On sélectionne toutes les colonnes du tableur, puis, on clique sur l’onglet « insertion », et ensuite sur « insérer un tableau ». On laisse bien l’option « mon tableau a des entêtes » de coché.

Ensuite, dans l’ordre :

  • Supprimer toutes les colonnes sauf « Type », « Source » et « Destination ».
  • Supprimez les deux premières lignes du tableur (qui ne font pas parti du tableau) : votre tableau doit maintenant être bien collé en haut à gauche de votre tableur
  • Cliquez sur l’en tête « type », puis triez le contenu de A à Z
  • Supprimez toutes les lignes qui ne sont pas du type « HREF »
  • Puis triez la colonne « Source », pour supprimer tout ce qui ne commence pas par l’URL de votre site (j’ai toujours pas compris comment des données autres que l’URL du site crawlé peuvent se retrouver là, si quelqu’un a des infos, je suis preneur). Normalement, vous ne devriez pas en avoir beaucoup
  • On supprime la colonne « HREF », puis on dédoublonne en cliquant sur l’onglet « Données » et sur « Supprimer les doublons ».
  • Et enfin, on dégage tout ce qui commence par http://www.votredomaine.tld/ histoire d’avoir plus de lisibilité sur le graph. Dans mon cas, je remplace tout ce qui commence en https://www.gdm-pixel.fr/ par « / ».

Reste une étape ultra-importante : remplacer tout les liens sortants par « OUT » (ou ce que vous voulez), et aussi supprimer les liens qui sont en nofollow s’il y en a ! EDIT : je viens de me rendre compte de la boulette : Google a shooté le page rank-sculpting il y a déjà un moment. Le nofollow occasionne quand même une perte de jus (disparition du crawler) donc vous pouvez remplacer les liens nofollow par « OUT »… 🙁

Bored cat
Oui, je sais, mais ça va s’arranger…

Et voilà, fin du nettoyage sous Excel !

Reste à enregistrer deux versions de ce tableur, au format CSV :

  • Un fichier « nodes.csv », qui contiendra deux colonnes : « Id » et « Destination »
  • Un fichier « edges.csv » qui contiendra deux colonnes : « Source » et « Target »

Et ensuite, on passe sur Gephi pour admirer tout ça…

Traiter les données sous Gephi

Aller, un dernier effort et on a presque fini !

Tout d’abord, on va importer les fichiers CSV. Pour ça, on va cliquer sur l’onglet « laboratoire de données », puis, dans la fenêtre qui s’ouvre, sur « importer feuille de calcul ». Dans la pop-up, on utilise le browser pour importer d’abord le fichier de Nodes (qui représente les pages). Puis on clique sur « Suivant », et on s’assure bien qu’on importe les « Id » et les « Destination ».

 On commence par importer les noeuds
On commence par importer les noeuds

Surtout, on ne coche pas la case « Forcer les nœuds importés à être de nouveaux nœuds. »

Puis on relance le process pour les « Edges » (les liens). Importer à Feuille de calcul. On sélectionne son fichier « edge.csv », puis on utilise le bouton select « En tant que table : Table des liens ». Puis on clique sur « Suivant », et on coche bien la checkbox « Créer les nœuds manquants » sur la fenêtre suivante. Puis « Terminer ».

On reste encore un peu dans le labo de données, puisqu’on va retravailler un peu les « nœuds » pour avoir une meilleure compréhension du résultat.

Sur la gauche, vous avez l’ID du nœuds, et un colonne « label » qui est vide. Cliquez sur Id pour trier tout ça, et sélectionnez les « Id » qui se ressemblent (là, il faut connaitre le site que vous voulez visualiser : les pages font-elles partie d’une catégorie ? Sont-elles liées entre-elles etc). Utilisez la touche MAJ + Clic gauche pour mettre ces éléments en surbrillance.

labo Gephi
Passez un peu de temps sur la labo pour améliorer la lisibilité du graph 🙂

Puis, faites « clic droit », et choisissez le menu « Editer tous les nœuds ». Vous avez une nouvelle colonne qui apparait sur la fenêtre, dans un onglet « Edition ». Dans cet onglet, vous trouverez des propriétés :

  • Taille
  • Position (x)
  • Position (y)
  • Couleur
  • Label Color
  • Label Size
  • Label Visible
  • Etc

On va juste modifier la couleur du label, pour ajouter des jolies couleurs sur le graph. Vous pouvez éventuellement modifier la taille du label, et ajouter du texte dans « Label » (tout court). Ca permettra de mieux remarquer les noms des pages sur les clusters qui pourraient se former.

Faites ceci pour toutes les catégories que vous pouvez avoir sur votre site, ou les ensembles notables. N’oubliez pas de colorer votre nœud « OUT » (un beau rouge bien criard sera approprié), idem pour la Home.

Et quand on a fini tout ça, on va directement se rendre sur l’onglet « Vue d’ensemble » tout en haut à gauche.

On va maintenant procéder à une étape importante : modifier la taille des nœuds en fonction des liens entrants. Plus une page reçoit de lien, plus elle a de jus (pour faire simple). Donc, ça se passe dans l’onglet « Aspect » : cliquez sur l’icône « Taille », puis sur la sous-section « Attribut ».

Utilisez le bouton select pour choisir « Degré entrant » et assignez des valeurs au pif : perso, je mets 30 et 150, mais il faudra peut-être remanier tout ça en fonction du rendu. C’est juste histoire de donner des tailles différentes aux nœuds, pour repérer plus rapidement les pages qui ne reçoivent que très peu de liens (ou celles qui en ont trop…).

modifier-taille-noeuds
Une étape indispensable si on veut avoir un rendu plus explicite…

Appliquer l’algo de spatialisation

On se rend ensuite dans l’onglet « Spatialisation », et on sélectionne « Force Atlas 2 ». On coche bien les cases « Mode LinLog » et « Empêcher le recouvrement ». Eventuellement, on adaptera le graph en tunant « Echelle », « Gravité » et « Répulsion approximative ».

Perso, j’y touche pas, ça va bien le faire comme ça.

Cliquez sur « Exécuter » et ouvrez bien l’onglet « Graph » sur la fenêtre de visualisation.

Si c’est la première fois que vous utilisez le soft, que tout s’est bien passé et que vous faites le tuto pour votre site, normalement, vous avez le sourire 🙂

Spatialisation Gephi
Quand l’algorithme de spatialisation tourne, c’est magique !

Les derniers petits réglages : on coche l’icone « T » dans la fenêtre de visualisation, le clé anglaise tout à droite, et on clic sur « Nœuds » à « Sélectionner les attributs à afficher en tant que label » à Id et Label.

Vous pouvez arrêt er l’algorithme de Spatialisation, et cliquer sur « Prévisualisation » dans le menu du haut (normalement, votre carte graphique crie « Aie » à ce moment là). Vous pouvez alors afficher les label sur le graph figé, et exporter le tout au format PDF/PNG.

Et voilà !

visualisation
Vous pouvez maintenant exporter le graph de votre site 🙂

Attention : ici, on ne fait pas de calcul du PR, ça vous donne simplement un aperçu du maillage interne, histoire de voir si vous avez des clusters cohérents, et pas trop de perte au niveau des liens sortants. Je ne dis pas que les liens sortants sont à éviter, je dis que les liens sortants sont à utiliser avec parcimonie (et dans une démarche stratégique). On verra dans une prochaine vidéo comment on peut utiliser Gephi pour avoir une approximation du PR des pages.

Pourquoi c’est utile de visualiser votre maillage interne

Oh, pour pleins de raisons :

  • Voir si une page ne reçoit pas « trop » de jus (page de contact, page des mentions légales etc)
  • Voir si une page importante n’est pas en manque de liens
  • Voir si vous ne faites pas trop de liens sortant (on le remarque tout de suite avec le nœuds « OUT » qui est trop gros, si vous faites des liens vers vos réseaux sociaux par exemple)
  • Voir si on a des clusters cohérents qui se forment (structure en silo, cocon sémantique etc).

Si vous avez des questions, c’est dans les commentaires que ça se passe ! Merci à Aurélien Berrut, Jérome et Sylvain Vandewalle pour l’inspiration 🙂

Ressources conseillées :

Tout savoir sur le cocon sémantique

Bombyx, le plugin ultime pour gérer son cocon sur WP

GDM-Pixel / Charles Annoni Charles est chef de projet en marketing web et conception de sites. Formateur en référencement naturel, il est également consultant en webmarketing et propose des tutoriels exclusifs en France.

Les commentaires peuvent donner lieu à un lien dofollow si thématique similaire et ancre clean :)

Comment(22)

  1. Bonjour,
    super tuto, bravo !
    Au delà de la complexité à travailler avec Gephi, le problème rencontré est souvent lié au besoin en ressources pour faire tourner l’outil. Quel volume de liens max avez-vous pu traiter et avec quelle config machine ?

    merci,

  2. Merci pour ce tutoriel bien complet que j’apprécie notamment pour son côté concret. Personnellement, je ne me prends plus autant la tête niveau SEO. Je m’oriente davantage maintenant sur l’expérience utilisateur, le contenu, le branding etc. Oui, je sais ca fait cliché et franchement quand j’entendais ce genre de choses il y a quelques années, ca avait tendance à me hérisser le poil, mais après avoir pris une sérieuse pénalité, je me suis rendu compte de ma dépendance à Google et il me casse bien les *** du coup j’ai décidé que l’utilisateur était plus important que Google qui devient trop *** avec ses contraintes (anti-ergonomiques souvent d’ailleurs).

    Je capitalise toujours sur le SEO, mais si le trafic baisse, je préfère me rattraper sur d’autres leviers : mailing, Facebook, Youtube etc.

    Bref, désolé je crois que je suis hors sujet. Je sors 🙂

  3. J’adore ! j’avais vu le tuto passé sur une grille d’audit abondance, mais j’étais pas allé au bout à l’époque et sur un PDF c’était moins facile à suivre…
    J’ai regardé rapidement mais ça à l’air complet.

    Sincèrement, merci pour ce travail ! En vidéo comme ça, c’est TOP !! 😀

  4. Bonjour Yoann, pour l’instant, que des petits sites (250 pages max). J’en ai un de 3500 URL à gérer, c’est là qu’on va voir si ça tient la route coté config (un I7, 16 Go de Ram, et une bonne CG). Après, comme Gephi utilise Java, c’est quand même bien lourd, et c’est clair que pour un gros gros site avec un paquet de noeuds, faudra plutôt faire ça avec un outil en ligne, ou demander à des experts comme Sylvain Dauré par exemple (voir sur cocon.se).

  5. Bonjour Chouchou et Loulou, non pas de hors sujet, bien au contraire, on arrive sur le fond du problème je crois : un site internet, c’est fait pour les humains, mais l’organique pèse tellement lourd dans l’équation que c’est délicat de se passer des moteurs de recherche. Et Google, en France, c’est 93 % des requêtes utilisateurs, donc on est un peu coincés en fin de compte… Perso, ça me saoule aussi de dépendre de Google, j’ai horreur des textes SEO, c’est imbouffable. Donc je me rattrape comme je peux XD Et le maillage interne, c’est quand même un levier de fou, nettement moins difficile à travailler que les backlinks par exemple. C’est aussi pour ça qu’on revient aux fondamentaux depuis Panda/Penguin : la partouze de liens, c’est terminé,enfin, il parait 😉 …

  6. Salut Allan, oui, le format vidéo aide beaucoup pour ce genre de tutos. Et perso, j’y ai quand même pris goût (j’ai un fond vert qui arrive bientôt, et une to-do-list de fou furieux). Stay Tuned 🙂

  7. Merci pour la mention, et bravo pour le tuto.
    En fait, je faisais comme tout le monde « à la main » avec Gephi, et ce sont les limites de Gephi (en ressources comme en fonctionnalités pour l’utilisation mapping de site web) qui m’ont poussé à faire autre chose.
    C’est en faisant soi même, à la main, même si c’est « chiant », qu’on apprend le plus.
    Quand on a compris, on peut passer à d’autres outils pour aller plus loin.

  8. Salut Charles,

    Super ton tuto 🙂
    Par contre quand j’ai trié mes urls et que j’ai ouvert Gephi il y a certaines fonctionnalités que je n’ai pas au moment de l’import des CSV et du coup le rendu n’est pas le même… Idem dans de laboratoire de données 🙁

    Je viens de te voir sur Skype pour te poser une question si tu veux bien 😉

    Merci bien en tout cas c’est cool,

    Romain KB

  9. Bonjour Sylvain, merci pour le compliment, et de rien pour la mention (cocon.se est vraiment un projet super intéressant pour le SEO en France, c’était normal pour moi de le citer).

  10. Bonjour Romain, bizarre que que tu n’aies pas la même chose lors de ton import CSV. Pas de souci pour répondre aux questions dans les commentaires, comme ça, tout le monde en profite (open-source, tout ça tout ça…). Mais sur Skype, c’est différent, ça devient privé, donc du consulting (donc facturé). Je ne peux pas répondre en privé à toute les demandes (je suis comme tout les freelances : beaucoup de travail, du chiffre à faire pour nourrir la famille, et pas assez de temps dans une journée). J’espère que tu comprends 🙂

  11. Très bon tuto comme toujours, pour les liens qui t’embêtent (perte de jus) tu as pensé à les faire en Flash ? (à vérifier que google ne suit pas les liens dans le swf, à l’époque ce n’était pas le cas)
    J’imagine que ça va te poser des problèmes de conscience pour les utilisateurs sans plugin (mobiles) mais il est toujours possible de faire une détection et proposer du link html à la volée.
    La technique de silo a l’air vraiment intéressante, ceci dit je me demande s’il ne faut pas une armée de pages (une 100aine d’après Bourelly) pour donner de la puissance à tout ça lorsque tu n’as pas trop de backlink.

  12. Bonjour Eric, impossible d’envisager du flash aujourd’hui, les mobiles ne suivront pas, les OS peuvent afficher un message d’alerte, c’est mauvais pour le SEO et ça demanderait pas mal de boulot pour un résultat plutôt insatisfaisant. Laisser un lien vers les pages de haut niveau, ça revient à faire des liens vers les oncles/tantes, et ce n’est pas si catastrophique que ça pour un bon siloing.

    En ce qui concerne le volume, tout dépend des thèmes traités : mieux vaut « moins », et bien qualifié, que « beaucoup » et redondant. Pas toujours facile de concilier du contenu pertinent pour les humains ET pour les robots 🙂

  13. Bonjour, et merci pour ce tuto clair. Contrairement au chat, je le trouve facile à suivre pour une première prise en main, et passionnant quand s’affiche le mapping. Merci.

  14. Salut MFM, merci pour les compliments ! Et tu verras que le prochain tutos (en préparation) va encore plus loin, puisqu’on pourra calculer le PageRank des pages 🙂

  15. Bonjour Charles,
    Merci pour votre tuto et le temps que vous abez passé pour partager tout ça.
    Je ne suis hélas pas encore arrivé au bout. Je ne comprends pas bien cette étape : « Reste une étape ultra-importante : remplacer tout les liens sortants par « OUT » (ou ce que vous voulez), et aussi supprimer les liens qui sont en nofollow s’il y en a ! EDIT : je viens de me rendre compte de la boulette : Google a shooté le page rank-sculpting il y a déjà un moment. Le nofollow occasionne quand même une perte de jus (disparition du crawler) donc vous pouvez remplacer les liens nofollow par « OUT »
    Pouvez-vous m’éclairer ?
    Merci
    Anthony

  16. Bonjour Anthony, en fait, les liens sortants OU les liens en nofollow représentent une perte de « jus » (ou de PageRank), car ils font sortir le robot de votre site (soit il visite le lien sortant, soit il se téléporte parce que le lien est en nofollow). Donc, quand vous avez obtenu votre premier tableur excel contenant tous les liens de votre site (regardez la vidéo à 05:34), il faut remplacer, dans la colonne « Destination », tous vos liens sortants ET tous les liens nofollow par « OUT » (ou « sortie » ou ce que vous voulez), pour représenter cette entité sur le graph : la perte de jus. Vos liens sortants sont repérables dans la colonne « Destination » car ils ne pointent pas vers votre site, et les liens nofollow sont repérables grâce à la colonne « Follow » (ils seront intitulés « false » si c’est du nofollow). Ca vous permet de voir si votre site contient beaucoup de « fuite » de PageRank.

  17. Bonjour Charles,
    Tout d’abord, merci pour ce tuto car c’est très bien expliqué et bien détaillé. Je viens de lancer mon premier projet avec quelques 40 000 URL à checker, ça mouline, ça mouline…
    Je vais voir les résultats apportés, c’est assez impressionnant de voir la « toile d’araignée » se former. Je te tiendrais informé de ma première analyse.

  18. Hello,

    J’ai suivi ce topic et il est vraiment bon. Par contre je me demandais pourquoi on prenait « outlinks » et pas « inlinks » ?

  19. @Laurent : Comme ça, non, rien qui me vient, tu as du louper quelque chose quelque part !
    @Vincent : on prend les « outlinks » pour inclure les liens sortants (domaine externe). Comme ça, on peut voir si on a trop de « fuite » de PR.

  20. Hello Charles,

    J’ai apprecié ton tuto. Il est était très bon.
    Par contre est-ce vraiment utile de laisser les liens Facebook, Twitter et CGU uniquement sur la page d’accueil ? Est-ce-que franchement ça fait une différence ?
    Car j’ai l’impression que même les sites les plus optimisés laissent ces liens là sur toutes les pages.

    Bien cordialement,
    Guillaume

  21. Salut Guillaume, filtrer les liens « pourris » qu’on fait sur son site, c’est une option. Rien d’obligatoire. Maintenant, la vraie question, c’est « pourquoi tu fais un lien ». Perso, j’ai du mal à comprendre qu’on renvoie toujours les internautes vers nos réseaux sociaux, alors qu’ils sont justement là où on a envie qu’ils soient : sur notre site ! Tu auras jamais autant de chance de convertir sur les réseaux sociaux que sur ton propre site. En outre, Facebook, Twitter etc, c’est du lien nofollow. Pourquoi on leur enverrait du jus, alors qu’eux ne le font pas pour nous ?

    Il y a effectivement pleins de sites qui rankent très bien et qui font du lien sitewide vers les réseaux sociaux. C’est vrai. Mais quand t’as déjà pas beaucoup de backlinks qui pointent vers ton site, c’est dommage de dilapider ton jus avec du lien qui ne sert finalement pas à grand chose. Perso, je considère que les réseaux sociaux doivent être au service des sites que je crée. Pas le contraire. Après, chacun créé sa stratégie webmarketing comme il le souhaite, car chaque cas est particulier 🙂

LEAVE YOUR COMMENT

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *