Lors d'une migration SEO avec changement d'URL, de nombreuses tâches doivent être mises en place pour faciliter le passage des URL de l'ancien au nouvel intitulé. Plusieurs outils peuvent grandement vous faciliter le travail en automatisant un certain nombre d'étapes, et en passant par des méthodes de scraping (analyse du contenu et détection de certaines séquences) de vos pages. Voici comment...

Par Aymeric Bouillat


Principe d’une migration SEO

Lors d’une refonte de site, et en cas de modification de la structure des URL, il est indispensable de rediriger les anciennes URL vers les nouvelles, via des redirections de type 301. Cela permettra d’une part de transférer la popularité acquise par les landing pages SEO du site vers les nouvelles URL, et cela limitera d’autre part le nombre d’erreurs 404, permettant ainsi à Googlebot d’être efficace dans l’utilisation du temps machine consacré à votre site par ses robots.

Grâce à ces redirections, l’essentiel des positions pourra être conservé, voire amélioré si vous profitez de la migration pour faire le ménage et corriger les problèmes de duplication de contenu par exemple.

Pages sans correspondances

Lors de l’inventaire des URL à migrer en fonction de différents critères, que ce soit les clics / impressions dans les pages de résultat, ou encore les URL recevant des liens externes, certaines d’entre elles n’ont pas forcément de correspondance sur le nouveau site.

Cela peut se produire sur les sites de e-commerce pour les produits qui ne sont pas renouvellés (ou qui sont en rupture de stock de façon définitive), mais également pour des pages catégories en cas de restructuration de l’arborescence (ex : regroupement de catégories, suppression de la catégorie « Petit electroménager »). Ces URL ayant parfois un potentiel SEO non négligeable, doivent être redirigées pour les plus performantes d’entre elles. Mais vers quelle URL ?

Il sera nécessaire de « faire matcher »  ces URL abandonnées vers les pages les plus pertinentes et traitant de la même thématique, ou plutôt du même sujet. Il vous faudra pour cela passer par la qualification de vos contenus. Mais dans le cas où aucun élément présent dans l’URL ne vous permet d’avoir une vision précise du contenu de vos pages, et de la catégorie à laquelle elle appartient, vous devrez aller récupérer des éléments contenus dans la page pour vous permettre de la qualifier. Cela vous permettra par la suite d’identifier les produits non suivis d’une catégorie pour les rediriger plus facilement vers un produit similaire ou la page catégorie correspondantes.


Fig. 1. Qualification des URL à migrer.

Supposons cette URL :  /categorie/634/product-2984.html. Difficile de déterminer à partir de cette URL son contenu.  Mais en récupérant des éléments dans la page comme le titre ou le fil d’ariane de la page, il sera aisé de classifier l’ensemble de ces URL.

Comme il n’est pas envisageable de traiter l’intégralité de vos conteus à la main, c’est là que le scraping intervient, afin de vous permettre de gagner du temps dans l’organisation de vos URL pour la mise en place de la table de correspondances.

Languages et outils de scraping

Languages utiles pour qualifier vos contenus

Il existe plusieurs languages vous permettant de localiser et de récupérer un élément précis d’une page dans le code source HTML. Ce sont d’ailleurs certains de ces languages qu’utilisent par défaut les crawlers du marché, pour intercepter les balises Title, meta ou encore H1. Voici les principales méthodes de scraping :

  • Regexp (les expressions régulières), ce qui donnera par exemple : <h1>([^<]+)</h1> pour récupérer le contenu d’une balise <h1> ;
  • Les sélécteurs CSS, ce qui donnera head > title pour récupérer le contenu de la balise <title> d’une page ;
  • Xpath qui est un language très complet, ce qui donnera  //ul[@id="breadcrumbs"]/li/a/ pour récupérer le fil d’ariane (dépend du code HTML utilisé) d’une page afin de qualifier les contenus.

Nous allons nous concentrer sur Xpath qui est plus complet et reconnu par de nombreux outils de scraping. Il vous permet de parcourir le code source HTML à la façon d’une arborescence, et de cibler des balises spécifiques en fonction de leurs attributs ou de leur contenu.

Exemple de ciblage Xpath :


Fig. 2. Exemple d’utilisation avec recherche d’un élément spécifique.

  • Contenu de l’élément <div> ayant comme class « category » : //div[@class=category]

Outils de scraping

De très nombreux outils de scraping existent sur le marché. Dans le cadre du scraping pour préparer sa migration SEO, nous allons nous concentrer sur Screaming Frog SEO Spider associé avec deux autres outils : votre navigateur, ainsi qu’un testeur d’expressions Xpath.

Screaming Frog

Le crawler Screaming Frog récupère par défaut plusieurs éléments d’une page Web. Grâce à sa fonctionnalité d’extraction, il vous sera possible de récupérer des éléments spécifiques, selon vos spécifications.


Fig. 3. Fonction d'extraction de données d'une page sur Screaming Frog.

Les éléments à récupérer via Xpath (au choix, avec les expressions régulières ou les sélécteurs CSS), doivent être paramétrés avant le lancement du crawl de votre site actuel qui va être migré.


Fig. 4. Configuration des éléments à extraire lors du crawl via Xpath.

Dans l’exemple ci-dessus, nous avons paramétré l’extraction de deux types de données, en fonction du site analysé et de son code source HTML :

  • Contenu des éléments d’une liste <li>, à l’intérieur d’un <div> ayant pour attribut id= « similar-products », afin de récupérer la liste des produits équivalents (utile dans le cas d’un produit non suivi) : //div[@id="similar-products"]/ul/li/a
  • Contenu des liens du <div> ayant comme attribut class « breadcrumbs », afin de récupérer le contenu du fil d’ariane :  //div[@class="breadcrumbs"]/span/a

Vous pourrez ainsi classer vos URL en vue de leur migration. Il vous suffira pour cela de déterminer le chemin Xpath de l’élément à récupérer, afin de déterminer ce qui se cache derrière chacune de vos URL.

Pour trouver le bon chemin Xpath en fonction du code de vos templates, deux outils vous seront utiles :

Votre navigateur

Pour vous aider à mieux identifier le chemin Xpath de l’élément à récupérer dans vos pages, vous pouvez utiliser l’Inspecteur d’éléments de votre navigateur :
 

  • effectuer un clic droit sur l’élement à récupérer (ex : référence d’un produit) et choisissez l'option "Inspecter" :

  • Fig. 5.

  • Analysez le code source et mettez en place le chemin Xpath correspondant :

  • Fig. 6.

Le chemin Xpath sera donc //div[@class="ref-product"], c’est-à-dire le contenu de l’élément <div> ayant comme class « ref-product » en l’occurence.
La fonction de l’inspecteur d’éléments « Copy  > Copy Xpath » (accessible après un clic droit sur un élément du code) n’est pas forcément utile, puisqu’elle donne le chemin exact de l’élément par rapport à votre page actuelle, en partant de sa racine. Dans l’exemple ci-dessus, cela donnera :

//div[@id="PageProduitProd_0_breadcrumbtemplate_0_ComponentBreadcrumb_0_ ComponentBreadcrumb_0_ComponentBreadcrumbWeb_0_screen"]/div/div/div/div

Le nombre de 4 éléments <div> à passer avant d’atteindre la référence du produit recherché pouvant varier d’une page à l’autre, il vaut mieux cibler directement l’élément HTML souhaité grâce à ses points de différenciations si ils existent, comme une classe CSS dans cet exemple.

Avant de lancer votre crawl, il vous faudra vérifier le bon fonctionnement de votre chemin Xpath. Pour cela, vous pouvez utiliser RDDZ XPI.

RDDZ Xpi (RDDZ XPathInterpreter)

RDDZ XPI est un outil gratuit, créé par les excellents créateurs de l’outil RDDZ Scraper. Il vous permettra de vérifier le bon fonctionnement du chemin Xpath :


Fig. 7. Interface de l'outil de test de chemins Xpath, RDDZ XPI

Son interface étant très simple et intuitive, nul besoin de vous détailler son fonctionnement dans cet article.

Une fois que vos différents chemins Xpath vous permettant de classer et qualifier vos contenus sont fonctionnels, vous pourrez les utiliser dans un crawler supportant le scraping via Xpath, comme Screaming Frog Seo Spider.

Vous pourrez ainsi associer plus facilement et avec plus de précision chacune des anciennes URL vers les nouvelles, grâce aux informations recueuillies sur chacune des pages.

Traitement des pages vides

Il arrive parfois que des pages produits (dans le cas d’un site de e-commerce) soient vides et malgré tout encore maillées et crawlées par Googlebot. Si ces URL ne génèrent pas ou peu d’impressions dans les pages de résultats (données Search Console), et qu’elles ne reçoivent pas de liens externes de qualité, elles peuvent a priori être abandonnées.

Cela ne s’applique que dans le cas où ces pages vides ne seront plus alimentées par la suite.


Fig. 8. Page vide ne proposant pas de contenu.

La migration SEO est une bonne occasion pour faire le ménage.  Rediriger ces URL vides en masse vers une page de catégorie (« Consommables » dans cet exemple) ne serait pas d’une grande utilité, et pourrait même s’avérer contre-productif. En effet, les redirections 301 en masse vers une seule et même URL peuvent déclencher une pénalité algorithmique, et faire perdre des positions à des pages importantes.

Il est préférable de laisser du temps à Googlebot pour qu’il crawle des URL plus pertinentes que ces pages vides, qui prennent de l’espace pour rien (imaginez une librairie avec une grande partie de livres sans pages dans ses rayons…)

Afin de détecter ces pages vides, il vous faudra trouver la phrase (ou plutôt l’empreinte) générée par votre site Web ou CMS quand une page de Catégorie ne propose plus aucun produit :
- « Aucun produit trouvé »
- « Il n'y a plus de produit dans cette catégorie »
Etc.

Pour cela, inutile de passer par Xpath, une simple recherche texte dans le code source via Screaming Frog (Configuration > Custom > Search) fera l’affaire :


Fig. 9. Recherche des pages ne proposant aucun produit.

Cette première étape vous permettra de limiter le nombre de redirections à traiter dans le cadre de votre plan de migration. Cela sera également bénéfique pour votre fichier de redirection 301 qui sera plus léger. Les performances de votre serveur n’en seront que meilleures !

Qualification des contenus via le fil d’Ariane

Comme vu en introduction, il arrive fréquemment que certaines URL n’aient pas de correspondance sur la nouvelles version du site (page edito supprimées, pages de produits non suivis,…). Afin de rediriger ces URL vers les pages adéquates, la qualification de celles-ci sera indispensable.


Fig. 10. Qualification des URL.

Pour prendre un exemple concret, le chemin Xpath suivant //div[@id="wayfinding-breadcrumbs_feature_div"]/ul/li/span/a permettra d’extraire le fil d’ariane des pages produits du site www.amazon.fr.


Fig. 11. Extraction du fil d'ariane dans Screaming Frog SEO Spider.

Ce qui donnera comme résultat après le crawl du site :


Fig. 12. Résultat de l'extraction.

Avec ces données et une fois que les pages sans correspondance auront été identifiées, il vous sera plus aisé de rediriger les URL les plus performantes en SEO vers la page catégorie de niveau supérieur, ou une page équivalente. Il vous sera également utile de connecter Screaming Frog SEO Spider avec la Google Search Console (Menu Configuration > API access > Google Search Console), pour récupérer les données SEO de vos URL (impressions, clics), afin de prioriser vos redirections 301, et de traiter dans un premier temps les URL ayant le meilleur potentiel de positionnement et de trafic.

Grâce à la fonction recherche V sur Excel, vous pourrez faire le matching entre vos ancienne URL sans correspondance et les URL proposant un contenu similaire, après avoir crawlé l’ancienne version du site et la nouvelle version du site en préprod.

Attention cependant de ne pas effectuer de redirections de masse (comme pour l’acquisition de liens massifs), qui pourraient avoir des effets négatifs. Une erreur fréquente consiste à rediriger toutes ses URL sans correspondance vers la homepage, ce qui est fortement déconseillé : la précision sera votre atout lors d’une migration SEO.

Clés communes pour les fiches produits

La mise en place de correspondance, ou la qualification des pages n’est pas toujours évidente à réaliser. Dans certains cas et en fonction de vos interlocuteurs, vous ne pourrez pas toujours obtenir les correspondances entre les anciennes et les nouvelles URL, via des exports qui ne peuvent pas être réalisés par les équipes IT, faute de planing trop serré.

L’identification d’une clé commune entre les anciennes et les nouvelles URL vous permettra avec 2 crawls distincts de faire la mise en relation des URL. Sur un site de e-commerce, on pense assez naturellement à la référence du produit :


Fig. 13. Référence sur une page produit.

Ainsi, avec un onglet pour chaque crawl (ancien et nouveau site en préprod), vous pourrez mettre en relation vos URL après avoir scrapé la référence produit de chacune des URL produit via Xpath, comme cela a été détaillé précédemment dans cet article :


Fig. 14. Mise en correspondance des URL produit via une RECHERCHEV sous Excel.

Grâce à cette technique de scraping, la totalité de vos fiches produits pourront être redirigées, et ce, sans aucune intervention des équipes de développement, probablement prises par le temps, comme c’est souvent le cas lors des projets de refonte de site Web.

Sources :

Screaming Frog SEO Spider : https://www.screamingfrog.co.uk/seo-spider/
RDDZ XPI : http://blog.rddz-tools.fr/entry/rddz-xpi


Aymeric Bouillat
Consultant SEO Senior, Resoneo (http://twitter.com/aymerictwit et http://www.yapasdequoi.com)