Conférence sur l'outil Screaming Frog lors du SEOCampus Paris 2020.
Screaming Frog Seo Spider est un crawler qui est utilisé par de nombreux référenceurs. C'est un outil puissant pour effectuer des analyses SEO, mais il est parfois sous-exploité. En effet, cet outil est en constante évolution, et certaines nouveautés sont discrètes ert bien cachées dans le smultiples menus!
L'outil ne fait pas l'artisan : avoir des données c'est bien mais savoir les interpréter correctement c'est mieux ;)
2. #seocampParis 2020 2
Aymeric Bouillat
Consultant SEO technique dans l’agence SEO (groupe )
• Des affinités avec le SEO technique
• Spécialiste des migrations de site
• Et un blog plus trop à jour…. https://www.yapasdequoi.com
Pour me suivre sur Twitter :
@aymerictwit
3. #seocampParis 2020 3
A quoi ça sert?
Analyse des balises
SEO
Extraction de données
précises dans les pages
Découverte des
problématiques de duplication
Examen des directives
pour les robots
Analyse des redirections
Crawl avec un
rendu JS, comme
Google
Détection des liens
cassés
Visualisation de l’architecture
d’un site et de son maillage
Connexions à des API (Search
Console, GA, Ahrefs, etc)
Génération de sitemaps
XML
6. #seocampParis 2020 6
Préférez le mode Base de données
• Un crawl, c’est gourmand ! (Configuration > Storage mode)
• Memory = 3Go min. crawls de moins de 100.000 URL : plus rapide, moins souple
• Database storage = avoir un disque SSD : plus souple, permet le crawl de gros sites
7. #seocampParis 2020 7
Database storage : mode « projet »
• Gérer ses crawls par client (File > Crawls )
Penser à faire le ménage
de temps en temps
9. #seocampParis 2020 9
Ne pas oublier !
• Utiliser la commande « site: »
• Faire un « précrawl » avant le crawl complet
• Prévenir le client ou l’hébergeur (éviter la blacklist)
• Sauvegarder sa configuration
10. #seocampParis 2020 10
Database storage : mode « projet »
• Définir ce que l’on souhaite crawler, et stocker
• Store permet de conserver toutes les relations (liens entrants et sortants)
• Objectif : Limiter le poids des fichiers dans la base de données
11. #seocampParis 2020 11
Comportement du crawler
Si il ne fallait en retenir que 6 :
• Configuration « User-agent » : dynamic serving /site mobile dédié
• Craw Linked Xml Sitemaps(onglet « Crawl »)
• Extraction JSON-LD +microdata (onglet « Extraction »)
• Store HTML/rendered HTML (onglet « Extraction »)
• Effectuer un rendu JS (onglet « Rendering »)
• Respect « canonical » & « noindex » en fonction des besoins…(Onglet
« Advanced »)
Aucun crawl ne se ressemble…
12. #seocampParis 2020 12
Modifier des URL à la volée
Case study
HTTP vers HTTPS
Suppression du #, ex:
/faq#question1
/faq#question2
(avec le rendu JS, les URL avec # sont
explorées, on va regrouper les signaux)
13. #seocampParis 2020 13
Site en développement
Menu Configuration > Authentification
2 méthodes :
Authentification serveur standard
ou
Formulaire de login
• Adapter le robots.txt si nécessaire
• Informer client/hébergeur de l’IP et de l’UA utilisé
Penser à
l’exclusion des
URL « touchy »
14. #seocampParis 2020
• « Let’s crawl by night » !
• Crawl régulier (utile pour faire des comparaisons)
• Possibilité de générer des exports auto (csv, xlsx,..)
• Génération automatisée de sitemaps
14
Et le crawl programmable?
15. #seocampParis 2020 15
Crawl sans interface !
• Pas d’interface graphique =
Idéal pour un serveur
Préparer un fichier de configuration et générer
ses exports automatiquement !
--config "C:UsersAymeric.BouillatCrawlsconfig-mobile.seospidercon
17. #seocampParis 2020 17
A la pêche aux données : scrappons!
Extraire des données des pages Web, pour qualifier, analyser et optimiser!
Fil d’Ariane
Nombre
d’avis
Stock
Descriptif
Code de
tracking GA
Le type de page (ex:
listing, produit, édito, etc.)
Nombre de
commentaires
18. #seocampParis 2020 18
Exemples d’utilisations SEO
Récupérer des éléments précis sur une page Web:
Fil d’Ariane (ex: qualifier/organiser ses URL)
Détecter des typologies de pages
Sur un site e-commerce
l’état en stock d’un produit (disponibilité / liens vers des produits épuisés)
le nombre d’avis sur un produit (pages produits avec peu d’avis)
le nombre de commentaires
Sur un site de contenu
le nom de l’auteur d’un article
la date de publication d’un article
Et en général:
le nombre de blocs catégories
le contenu principal (contenu d’un paragraphe précis)
les données Opengraph/TwitterCards
les URL des vidéos Youtube
etc.
Cf. « Annexe scraping » en fin de
présentation
20. #seocampParis 2020 20
Attention aux erreurs d’interprétation
Profondeur des URL
Près d’un tiers de vos URL sont accessibles en 4
clics depuis la page d’accueil.
C’est très grave d’un point de vue maillage.
La majeure partie des URL en profondeur 4 sont
des URL d’ images (liens vers des images), ça va…
21. #seocampParis 2020 21
Problématiques d’URL
Focus sur les paramètres d’URL (ex: tri, filtre, pagination etc.)
Pertinence des URL (si indexables)
C’est pas parce qu’il y a écrit « canonical » que c’est bien ! (ex: pagination vers la 1ere page…)
22. #seocampParis 2020 22
Codes réponse : par typologie de page/URL
Beaucoup de redirections?
- similarité entre les redirections (pages de
destination)
- source des redirections (lien ? Canonical ?
hreflang ? AMP ? )
- erreur de lien? La page de destination
existe peut être !
26. #seocampParis 2020 26
Attention aux softs 404
Tester des URL inexistantes et regarder le code réponse. Ex: /url-qui-n-existe-pas
Statut HTTP de l’URL en 200 ?
(et non 404)
28. #seocampParis 2020 28
Et les balises <title>…</title>?
Beaucoup de duplicate au premier abord? mais il peut être « logique » (ex: pagination)
29. #seocampParis 2020 29
Faire des exclusions pour y voir + clair
Pour voir toutes les URL qui ne contiennent pas « page=… »
^((?!page=).)*$ Afficher les URL ne contenant pas « page= » via une regexp.
30. #seocampParis 2020 30
Contenu dupliqué
Un nouvel onglet dans Screaming Frog !
Comparer les différences
entre 2 pages très
similaires
31. #seocampParis 2020 31
Trop de similarité à cause d’un mega-menu ?
Ne pas tenir compte de certains éléments HTML, c’est possible
33. #seocampParis 2020 33
Maillage
Maillage interne : bien ou pas? Ça dépend de ce qu’on regarde
Attention : ne représente pas l’intégralité
des liens, mais juste le chemin le + court
pour accéder à chaque URL
34. #seocampParis 2020 34
Visualisation
Mettre en avant des défauts de maillage, ou identifier des pages en fonctions de certains KPI
• Voir si des URL fortement maillées ne sont pas indexables
(Canonical, redirection, noindex) perte de PageRank
interne
• Voir où se situent dans le maillage les URL qui
génèrent le plus de trafic
• Link score : page rank interne de
screaming Frog
36. #seocampParis 2020 36
Mieux comprendre le maillage d’une page
Ancres de liens : renforcer les variations sémantiques
37. #seocampParis 2020 37
Principales occurrences d’un contenu
Avoir préalablement coché la case
« Store HTML » de l’onglet « Extraction »
lors de la config du crawl
39. #seocampParis 2020 39
+ de données avec une analyse de crawl
Menu « Crawl analysis » « Start »
Voir les URL non maillées détectées
par ailleurs (hreflang, canonical,
sitemap, AMP, API, etc.)
40. #seocampParis 2020 40
URL non maillées
URL introuvables lors du crawl mais existantes par ailleurs
URL n’ayant jamais reçu de liens
URL ne recevant plus de liens
Renforcer le maillage
41. #seocampParis 2020 41
Orphan URL via les API
Permet de mettre en avant les URL présentes dans le sitemap, mais aussi la Search Console,
Google Analytics, et qui n’ont pas été trouvées lors du crawl. (cf. les onglets correspondants)
49. #seocampParis 2020 49
Exemples Xpath vs HTML
//div[@id="wayfinding-breadcrumbs_feature_div"]/li[not(@class)]
//ul[@class="a-unordered-list a-vertical a-spacing-mini"]/li/span
//span[@id="acrCustomerReviewText"]
(//span[@class="a-icon-alt"])[1] la première balise de ce type
//div[@id="availability"]/span
Descriptif
Nbe
commentaires
Nbe avis
Stock
Fil d’Ariane
https://devhints.io/xpathAntisèche :