Les critères de qualité de vos pages web selon Google
Utilisation avancée d'un crawler - SEO Camp'us 2015
1. Agence Conseil en stratégie digitale
SEO, CRO, Inbound Marketing, Analytics
Philippe YONNET
Agence Search Foresight – Groupe My Media
Les usages
avancés
d’un crawler
pour le SEO
2. / PHILIPPE YONNET – DIRECTEUR ASSOCIE SF
Philippe YONNET, 49 ans, a aujourd’hui douze années d’expérience en
référencement naturel.
• Il a conseillé plus d’une centaine de sites, dont un grand nombre de sites
à forte audience (Pages Jaunes, Rue du Commerce, Pixmania,
Dailymotion, AuFeminin, LeGuide, Twenga, Allociné, Ebay, Nokia, Fnac,
SFR, Facebook, La Redoute…)
• Il a été notamment Directeur métier puis Directeur Général Adjoint
d’Aposition-Isobar de 2007 à 2010. Il est ensuite revenu chez l'annonceur,
pour travailler à Londres et New-York pendant deux ans, en tant que
Directeur SEO International de Vivastreet, puis en tant que Directeur SEO
International et Directeur Merchandising du comparateur de prix Twenga.
• Philippe YONNET est le fondateur de l’association SEO Camp, qui regroupe
les professionnels du référencement des pays francophones.
Il est un contributeur régulier de la lettre professionnelle
d’Abondance, et a contribué à plusieurs chapitres du livre « réussir son
référencement » chez Eyrolles
Il a fondé le principal évènement sur le référencement en France, les
SEO Camp’us
Il a créé la certification CESEO, qui valide les connaissances des
experts en SEO
L’ORATEUR
3.
4. / Définition
4
C’est quoi un crawler ?
Un robot d'indexation (en anglais web
crawler ou web spider) est un logiciel qui
explore automatiquement le Web.
Il est généralement conçu pour collecter
les ressources (pages Web, images,
vidéos, documents Word, PDF ou
PostScript, etc.), afin de permettre à un
moteur de recherche de les indexer.
On les appelle aussi familièrement des
« bots » (d’où Googlebot, Bingbot) etc…
6. Connaître une url et savoir ce qu’elle contient
sont deux choses différentes
6
WEB
URLs crawlées
téléchargées et analysées
Frontière des urls
Zone inexplorée
(urls inconnues)
Pages
Seed
Urls connues
mais non
téléchargées
Le processus de crawl
8. Les deux modes
Deux modes : aspirateur / spider
Aspirateur : on fournit au crawler
une liste d’urls, que le robot
« aspire » (télécharge) pour
alimenter une base de données
Spider : on fournit une url de départ au
robot, qui analyse le contenu de la page
web, trouve les liens à l’intérieur, les
stocke dans une file d’attente. Puis il
télécharge les nouvelles urls trouvées,
trouve d’autres liens à l’intérieur et
ainsi de suite…
9. / Breadth first
Le processus de crawl : les 2 façons de crawler un site
• En mode breadth first, le robot
explore d’abord toutes les urls
situées à la profondeur 1, puis à la
profondeur 2 etc…
• Inconvénient : il faut attendre que
toutes les pages du niveau N soit
explorées, téléchargées et
analysées pour pouvoir passer au
niveau suivant
• Avantage : si le crawl s’arrête en
cours d’exploration, l’arborescence
est parfaitement connue jusqu’à un
certain niveau.
10. / Depth first
Le processus de crawl : les 2 façons de crawler un site
En mode depth first, le robot cherche
à explorer le maximum d’urls dans le
minimum de temps
• Avantage : cela va plus vite, car
si des modèles de pages sont
lents, ou si certaines pages
envoient des erreurs 500. On
peut paralléliser le crawl sans
avoir à synchroniser les différents
threads…
• Inconvénient : si on arrête le
crawl en cours de route,
l’arborescence obtenue est
inexploitable (les indicateurs
utiles sont faussés : profondeur,
indegree, outdegree…)
La plupart des crawlers du marché
fonctionnent sur ce mode, attention.
12. /
12
Pourquoi utiliser un outil de crawl ?
Objectif : simuler le
comportement d’un bot de
moteur de recherche sur votre
site pour identifier ce qui peut
bloquer ou gêner l’exploration
de vos pages web par le
moteur.
Votre crawler
simulant Googlebot
31. / ex : analyse avec Botify
Volumétrie des codes http: non 200
32. / Identification et estimation des volumétries
L’analyse des redirections
Détection des erreurs 30x
Détection des redirections en cascade, ou en boucle
Objectif : diminuer le volume de 301
Eliminer les 302
34. / Ce qu’un bon crawler pour le SEO doit permettre de faire
34
Les prérequis pour une utilisation avancée
Respect ou non du robots.txt
Possibilité de paramétrer le user-agent
Paramétrage du rythme de crawl
Respect ou non des x-robots-tag, des directions noindex, nofollow
Respect ou non de l’attribut nofollow
Prise en compte ou non des canonical
Détection des hreflang, des rel next/prev
Crawl des sous-domaines ou limité à un host
Crawl limité à un pattern d’url, ou excluant ce pattern
Comptage de l’indegree et de l’outdegree
Analyse correcte de la profondeur des pages
Aspiration de la base des liens, avec les anchor texts
Collecte des balises seo : title, h1, desc, meta robots etc…
Possibilité de reconnaître un pattern dans la page
Collecte du temps de téléchargement
Mode spider et mode liste
Capacité à parser le flash, les pdf, et les javascript
35. / Suite…
35
Les prérequis pour une utilisation avancée
Capacité à gérer http vs https://
Capacité à simuler une visite d’un device mobile / tablette / desktop
Collecte des rescodes, des redirections (y compris successives)
Capacité à convertir un pattern d’url rewriting (permet de matcher avec les urls
contenues dans les logs)
Capacité à crawler le web invisible (pages protégées par login/mdp)
Support de proxies (pour simuler le crawl depuis un autre pays)
+
La capacité d’exporter les infos récoltées dans des formats réutilisables :
Base des ressources (url => pages / images)
Base des liens (url + anchor text)
Nota Bene : il manque quelques unes de ces fonctionnalités aux crawlers du marché
36. Tester les performances du site
Le temps de téléchargement du code a une influence
sur l’exploration de Google
37. Tester les performances du site
Google webmaster tools ne
fournit que des temps
« moyens »
Un crawler permettra de
comprendre quelles sont les
« scripts » lents et d’identifier
les causes de
ralentissement
40. Vérification de l’efficacité
de la mise en cache
Extraction de patterns :
– timestamp de génération de la page vs horodatage du
téléchargement de la page
– Test de requêtes conditionnelles (If modified since et renvoi de
codes 304)
– Etc.
41. Analyse de la profondeur
Profondeur : nb de clics nécessaires pour atteindre une
page en cliquant sur des liens
– Exemple ci-dessous : Botify
42. Pourquoi mesurer la profondeur ?
0
20000
40000
60000
80000
100000
120000
140000
Prof0
Prof1
Prof2
Prof3
Prof4
Prof5
Prof6
Prof7
Prof8
nb urls crawlables
non crawlées
nb urls crawlées
Plus une url est profonde, moins elle reçoit de linkjuice
Plus une url est profonde, moins elle a de Pagerank, moins elle est crawlée
43. Le rythme de crawl sur Google est
fonction du PR (et d’autres facteurs)
44. Les prérequis pour le crawler
Respect du robots.txt
Gestion du nofollow sur les liens
Gestion du nofollow dans les balises meta
Gestion du x-robots-tag dans les en-têtes http://
Gestion des canonical comme des redirections
48. L’analyse combinée crawl+logs
Urls crawlables => données par votre crawler
Urls crawlées par Googlebot => découvertes dans les
logs serveur (User Agent : googlebot)
Home
Cat 1
P1
P2
P3
Cat 2
P1
P2
P3
P4
Cat 3
P1
P2
Votre version
Home
Cat 1
P1
P2
P3
Cat 2
P1
P1bis
P2
P2bis
P3
P4
Cat2bis Cat 3
Version vue par Googlebot
Des urls en moins
Des urls en +
49. L’analyse combinée logs + crawl
Identifier le problème du duplicate vu par google
Ce que vous montrez (crawl)
vs
Ce que le moteur de recherche voit et fait (logs)
Votre site
Votre site + du
duplicate
50. Principe de l’analyse des deux versions
Urls crawlées par
Google, non présentes
sur le site :
URLS parasites, à
bloquer dans le
robots.txt
Urls présentes sur le
site, non explorées par
Google : identifier la
cause
Urls OK
présentes et
crawlées
51. L’analyse du maillage interne
Objectif : mesurer les ratios
– Nb de liens entrants vs liens sortants
– Nb de liens sortants internes vs externes
Indegree = nombre de liens entrants
La hiérarchie des indegrees doit être conforme à
l’importance des pages
52. L’analyse du maillage interne
Objectif : mesurer les ratios
– Nb de liens entrants vs liens sortants
– Nb de liens sortants internes vs externes
Indegree = nombre de liens entrants
La hiérarchie des indegrees doit être conforme à
l’importance des pages
53. / Le tag de tracking est-il présent ?
53
Vérification d’un plan de taggage
Recherche d’un pattern (expression régulière)
55. / Est-ce que la nouvelle version du site est ok ?
55
Outil de recette
Recherche d’anomalies dans l’inventaire des pages
Les CTO qui ont essayé la recette à l’aide d’un crawler l’adoptent souvent
systématiquement ensuite
56. / Que se passerait-il si ?
56
Simuler un changement sur le site
Tester la structure d’un site en cas de changement dans l’inventaire des pages ou
dans son maillage.
Home
Cat 1
P1
P2
P3
Cat 2
P1
P2
P3
P4
Cat 3
P1
P2
Home
P1
P2
P3
P1
P2
P3
P4
Cat 3
P1
P2
Structure en ligne Structure envisagée à tester
57. / Le crawler, c’est le couteau suisse du référenceur
57
Conclusion
Outil de collecte de données
Outil d’audit
Outil de recette
Outil de simulation
Outil de collecte de données
58. / Crawlez toujours, crawlez encore, vous finirez par
découvrir quelque chose d’important…
58
Conclusion
Outil de collecte de données
Devise du SEO Shadok : il vaut mieux crawler même s’il ne
se passe rien que de risquer qu’il se passe quelque chose
de pire en ne crawlant pas !
(remarque : la devise est programmée dans l’ordonnanceur de
Googlebot ;-) )