Partager la publication "Classification de pages Web pour le SEO via le Machine Learning avec Python"
Nous inaugurons ici une série d’articles où nous allons traiter d’une problématique courante en SEO (Search Engine Optimization – Référencement) : à savoir, classer les pages en termes de position en fonction d’un mot clé dans les résultats des moteurs de recherche et notamment Google et de caractéristiques des pages.
Ce classement sera effectué au moyen d’algorithmes de Machine Learning.
Pour cela, nous aurons besoin de données de positionnements de pages dans les SERPS (Search Engine Results Pages). Ces données doivent contenir au minimum les informations suivantes :
- L’URL de la page Web
- Le mot clé (ou le groupe de mots clés) sur lequel la page est positionnée.
- La position dans les résultats.
Ces données peuvent être récupérées soit directement en scrappant Google, soit auprès d’entreprises comme SEMRush ou Yooda (mais en général elles sont payantes), soit enfin à partir des données de Google Search Console avec la limite que l’on ne peut récupérer les données que sur les sites que l’on administre.
Dans notre cas, dans un premier temps, nous récupèrerons ces données à partir de Google Search Console en ce qui concerne notre site, et à partir d’un crawl des résultats de Google pour les sites et pages de nos concurrents
Nous aurons aussi besoin de « caractéristiques » des pages Web et des sites Web qui nous servirons de variables explicatives afin de pouvoir faire une étude avec l’apprentissage machine. Ces données sont récupérées via un « crawler » de pages.
Pour simplifier le propos, nous étudierons le fait que les pages se trouvent sur la première page de Google (Top10) ou non. Ce qui revient à une classification binaire.
Les programmes seront fait en Python.
Google Search Console
Google Search Console est un outil de Google permettant aux webmasters d’analyser la qualité de l’indexation de leurs sites Web dans Google.
Après vous êtes connecté avec votre compte Google, vous arrivez sur le Tableau de Bord principal de Google Search Console. Si vous n’avez aucun site d’inscrit, le système vous demandera d’en ajouter un. Sinon, vous pouvez aussi ajouter un site à votre liste de sites :
Vous pourrez soit ajouter un nom de domaine par exemple ‘monsite.fr’ soit ajouter un sous-domaine avec un protocole en particulier comme ‘https://www.monsite.fr’. une fois celui-ci ajouté vous devrez valider votre site.
Si vous n’avez pas d’accès FTP, ni la possibilité d’ajouter une zone meta dans votre code source, ni accès à vos zones DNS ni de compte Google Tag Manager essayez de valider la propriété avec Google Analytics si votre site est suivi dans votre Google Analytics.
Une fois validé, Google vous fournira des information sur l’indexation de votre site.
Une fois que vous aurez des premières informations, allez dans l’onglet « Performances » (dans le menu de droite). le système affiche notamment la position moyenne des requêtes sélectionnées (ici toutes).
Sélectionnez une requête puis la vue « pages » et vous aurez la liste des pages qui sont positionnées sur la requête.
En cliquant sur la flèche descendante à droite vous pouvez ici récupérer les liste des pages et des positions moyennes qui répondent à la requête choisie (pour nous ici « Networking Morbihan ») .
Nous pourrions effectuer cette recherche pour toutes les requêtes et créer à la main un fichier les contenant toutes, ce qui serait fastidieux.
Heureusement, Google Search Console dispose d’une API qui permettra de récupérer les données souhaitées plus facilement.
Google Search Console API
Présentation de Google Search Console API
L’API de Google Search est accessible avec les mêmes codes que ceux pour l’API Google Analytics dont nous avions parlé dans un article précédent.
Dans cet article, googleanalyticsR : importation de vos données Google Analytics dans R nous décrivions la procédure pour obtenir des Codes « OAuth » pour accéder aux données sur la Console pour développeurs de Google et activer l’API de Google Analytics.
Dans notre cas, nous allons ajouter l’accès à Google Search Console API au projet que nous avions créé précédemment.
Il suffit pour cela d’aller dans la Console Google API https://console.developers.google.com/apis en vous connectant avec votre compte Google. Normalement vous avez du créer un projet précédent pour pouvoir utiliser « Analytics Reporting API » et « Analytics API »
Cliquez sur « Activer des API ET des Services » et recherchez « Google Search Console API » :
Puis , sélectionnez Google Search Console API :
Et activez-là :
Vous n’êtes pas obligé de créer de nouveaux identifiants, vous pouvez utiliser ceux que vous aviez créés précédemment :
Cliquez sur « Identifiants des API et services ».
Choisissez un ID clients OAuth 2.0 existant. Ici nous en avons créé 2 : un pour nos démos en R un autre pour nos démos en Python. Je vais prendre Python :
Vous pouvez voir ici l’ID client et le Code secret du Client.
Vous pouvez soit récupérer ces IDs dans votre futur programme, soit télécharger le fichier .json qui contient ces codes dans le répertoire de votre programme Python. Nous vous présenterons 2 méthodes pour récupérer les données.
Dans notre prochain article nous verrons concrètement comment importer les données Pages/Expressions/Positions avec Google Search Console API et Python.
En attendant, vous pouvez aussi consulter la documentation pour utiliser l’API avec Python, disponible à l’adresse https://developers.google.com/webmaster-tools/search-console-api-original/v3/quickstart/quickstart-python
A Bientôt,
Pierre
Mohamed Tefridj
22 juillet 2024 at 2 h 56 minMerci Pierre du fond du cœur. Ce n’est pas évident de trouver des articles francophones de la même qualité que les tiens. Je t’ai découvert à l’instant dans un podcast anglophone sur la puissance de python sur le SEO où tu as été mentionné comme une référence.
Je te souhaite bonne continuation dans ta mission de transmission.
Je suis étudiant en Tunisie.
Pierre • Post Author •
22 juillet 2024 at 19 h 36 minMerci pour ton soutien, bonne continuation dans tes études.