Aller au contenu

Comment détecter les liens multiples avec Screaming Frog ?

Antoine Brisset
Antoine Brisset
Temps de lecture : 2 min
Comment détecter les liens multiples avec Screaming Frog ?
Photo by Fré Sonneveld / Unsplash

Table des matières

Si tu t'intéresses de près au SEO, tu dois savoir qu'une des recommandations en matière de maillage interne est d'éviter, sur une page, de faire plusieurs liens vers la même page cible.

D'après les derniers tests de la communauté SEO (je n'ai pas testé de mon côté), il semblerait que, dans ce cas de figure, seul le 1er texte d'ancre soit pris en compte par Google, et non les suivants.

Il y aurait aussi un effet négatif sur le PageRank interne, mais il n'existe pas de consensus clair à ce sujet.

La question du jour est donc : comment repérer facilement ces liens doublons avec Screaming Frog ?

Indice : XPath + custom extraction 😀

Allez, j'te montre !

Étape 1 : isoler les liens internes

La 1ère étape consiste à sélectionner uniquement les liens pointant vers des pages internes et donc à exclure les liens externes.

Je vais donc rechercher, dans la page, tous les liens commençant par l'URL de mon site ou commençant par "/" (URL relative).

L'expression XPath correspondante sera la suivante :

//a[starts-with(@href,"https://www.seomemento.com") or starts-with(@href, "/")]

Explications :

  • //a : je cherche tous les liens
  • starts-with(@href,"https://www.seomemento.com") dont l'attribut href commence par "https://www.seomemento.com" (à remplacer par l'URL de ton site)
  • or starts-with(@href, "/")] : ou dont l'attribut href commence par "/"

Étape 2 : exclure les liens ancrés

Je vais également filtrer les "liens d'ancrage", c'est-à-dire tous les liens menant vers une section particulière d'une page.

Pourquoi ? Parce que selon les derniers tests SEO, faire un lien ancré permettrait justement de contourner le problème des liens multiples.

L'expression XPath devient donc :

//a[starts-with(@href,"https://www.seomemento.com") or starts-with(@href, "/")][not(contains(@href,'#'))]

Explications :

  • [not(contains(@href,'#'))] : parmi les liens trouvés à l'étape 1, je veux exclure les liens vers des URLs contenant un dièse

Étape 3 : conserver uniquement les doublons

C'est ici que ça devient intéressant.

Maintenant qu'on a gardé uniquement les liens internes, comment faire pour savoir si un lien est présent plusieurs fois dans la page ?

Et bien, en fait, il suffit de vérifier si chaque lien interne dans la page est précédé ou suivi d'un lien ayant le même attribut href.

//a[starts-with(@href,"https://www.seomemento.com") or starts-with(@href, "/")][not(contains(@href,'#'))][@href = following::a/@href or @href = preceding::a/@href]/@href

Explications :

  • [@href = following::a/@href or @href = preceding::group/@href] : je sélectionne uniquement les liens de l'étape 2 dont l'attribut href est égal à l'attribut href d'un lien situé après lui dans le DOM (following::a/@href), ou avant lui (or @href = preceding::a/@href)
  • /@href : j'affiche uniquement l'attribut href de ces liens

Aller plus loin

Compter les liens multiples

Au lieu d'extraire les liens, tu peux aussi les compter :

count(//a[starts-with(@href,"https://www.seomemento.com") or starts-with(@href, "/")][not(contains(@href,'#'))][@href = following::a/@href or @href = preceding::a/@href]/@href)

Calculer un ratio de liens multiples

Ou tu peux même calculer un ratio en utilisant l'opérateur div.

count(//a[starts-with(@href,"https://www.seomemento.com/") or starts-with(@href, "/")][not(contains(@href,'#'))][@href = following::a/@href or @href = preceding::a/@href]) div count(//a[starts-with(@href,"https://www.seomemento.com/") or starts-with(@href, "/")][not(contains(@href,'#'))])

Et voilà !

Bien entendu, à toi d'adapter l'expression XPath en fonction de ton besoin : exclure les liens du menu, les liens sidebar, etc.

Screaming Frog

Antoine Brisset Twitter

Consultant SEO depuis 2010. Je traque les clics inutiles et automatise les tâches répétitives pour gagner du temps dans mon quotidien de travailleur du web.

Commentaires


Articles Similaires

Membres Public

Comment récupérer les URLs d'un sitemap XML avec Screaming Frog (sans les crawler) ?

Il y a quelques semaines, j'ai découvert dans cet article une astuce toute bête mais très pratique pour extraire les URLs d'un sitemap XML avec Screaming Frog. L'idée c'est d'utiliser le mode liste de Screaming Frog de la façon suivante : * cliquer sur Download XML Sitemap * coller l'URL du sitemap * lancer

Comment récupérer les URLs d'un sitemap XML avec Screaming Frog (sans les crawler) ?
Membres Public

Comment sauvegarder ses extractions personnalisées (XPath, regex) dans Screaming Frog ?

Le tips du jour fait suite à une question très intéressante que m'a posée Christophe aka @stonetatara au sujet de Screaming Frog. La question est la suivante : est-il possible d'enregistrer une collection de requêtes XPath dans une librairie permanente, de manière à pouvoir les réutiliser à chaque crawl, peu importe

Comment sauvegarder ses extractions personnalisées (XPath, regex) dans Screaming Frog ?
Membres Public

Comment calculer un ratio, une fréquence et une moyenne avec Screaming Frog ?

Chaque fois que je pense avoir fait le tour des subtilités du langage de requête XPath, j'apprends un nouveau truc cool. Dernier exemple en date : j'ai découvert qu'il existait un opérateur div permettant, comme son nom le suggère, de réaliser une division. Bon, dit comme ça, ça ne paraît pas

Comment calculer un ratio, une fréquence et une moyenne avec Screaming Frog ?