Site icon Anakeyn

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 :

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.

Accueil Google Search Console

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 :

Tableau de Bord Google Search Console

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.

Validation Site Google Search Console

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).

Accueil Performances Google Search Console

  Sélectionnez une requête puis la vue « pages » et vous aurez la liste des pages qui sont positionnées sur la requête.

Performances Requêtes Pages Google Search Console

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 ») .

Liste des pages positionnées sur la requête « 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 »

Tableau de Bord Console Google Developers

Cliquez sur « Activer des API ET des Services » et recherchez « Google Search Console API » :

Recherche Google Search Console

Puis , sélectionnez Google Search Console API :

Google Search Console API

Et activez-là :

Google Search Console API activée

Vous n’êtes pas obligé de créer de nouveaux identifiants, vous pouvez utiliser ceux que vous aviez créés précédemment :

Identifiants Google Search Console API Etape 1

Cliquez sur « Identifiants des API et services ».

Google Search Console API identifiants (étape 2)

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 :

Google Search Console API identifiants (étape 3)

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

Quitter la version mobile