11 min.
Utiliser des données pour prendre des décisions SEO et marketing
1L’art de la gestion de projet2Un projet à succès commence par une bonne gouvernance3Cascade, agilité, demandes de changement?

Utiliser des données pour prendre des décisions SEO et marketing

  • Niveau Technique
Contenu & SEO

Aujourd’hui, la tendance est de plus en plus à l’automatisation des tâches pour délaisser les travaux répétitifs et se concentrer sur l’analyse. C’est une évolution du marché et de nos occupations journalières. Toutefois, il est parfois compliqué de naviguer dans la jungle des données, scripts, langages, formules et consorts.

Chez Adviso, nous croyons que les données sont essentielles dans la prise de décision visant à privilégier la pérennité des activités en ligne et la manière de rejoindre les bonnes cibles au bon moment. La bonne nouvelle? Tout ce dont nous avons besoin pour faciliter ces décisions est accessible sur le web.

Cet article fait suite à un autre texte publié récemment, le Guide de l’analyse de données en temps de crise. Pour des informations SEO reliées spécifiquement à la crise, vous pouvez sauter la section des prérequis en cliquant ici.

Les prérequis

Afin de mieux comprendre les scripts et méthodes présentés, il faut avoir quelques connaissances et une certaine compréhension des langages de programmation et formules de tableurs. Ces connaissances permettront de mieux comprendre l’article.

Pour refaire les scripts et les exemples présentés dans l’article, vous aurez besoin des outils suivants :

  • Jupyter Notebook
  • Google Colab

Note : Les outils présentés ci-dessus sont les plus populaires et faciles d’accès sur le marché, mais il est tout à fait possible d’utiliser d’autres outils similaires.

Jupyter Notebook

Jupyter Notebook est disponible sur Jupyter et vous permet de lancer et utiliser du code Python ou R de manière visuelle. Il y a ici deux méthodes d’utilisation, mais nous vous recommandons de passer directement par le logiciel Anaconda qui intègre le module Jupyter Notebook.

L’avantage principal de passer par Anaconda et Jupyter Notebook est que vous pouvez gérer des environnements de travail pour, par exemple, différentes versions de Python.

Pour utiliser Jupyter Notebook, vous aurez besoin d’installer un logiciel localement, contrairement à Google Colab. Cela peut être un avantage pour la mobilité sans Internet, mais demandera une bonne machine pour de plus gros calculs.

Google Colab

Google Colab est la plateforme en ligne de science de données de Google. Elle s’intègre dans la suite Google Drive et permet de travailler sur les ressources serveur de Google. Quant à son fonctionnement, il est très similaire à Jupyter Notebook.

Vous aurez seulement besoin d’une connexion Internet et d’un compte Google pour accéder à l’interface. Toute la puissance de calcul se fait directement sur les serveurs de Google.

En adaptant un script disponible sur Google Trends, nous sommes capables de « remplacer » et compléter les outils de génération de mots clés.

Pour ce faire, nous utiliserons l’outil Jupyter Notebook et le langage de programmation Python et nous nous nous servirons des librairies pytrends (l’équivalent d’une API de Google Trends) et panda (pour la manipulation de données via Python).

>> Si vous souhaitez voir le résultat, cliquez ici.

Ci-dessous, passons en revue les étapes de prise en main et d’utilisation de l’environnement de travail (installation, script et rendus).

1. Mise en place et installation

D’abord, l’installation de pytrends par la commande ci-dessous :

pip install pytrends

Puis l’installation de panda avec la même commande en spécifiant la librairie panda :

pip install panda

Ensuite, pour le chargement des librairies, il faut copier/coller le code ci-dessous et le lancer via Jupyter Notebook ou Google Colab :

import pandas as pd                        
from pytrends.request import TrendReq
pytrend = TrendReq()

Nous commencerons à utiliser ce script via une première fonction permettant d’avoir des suggestions de mots clés basées sur Google Trends. Il est important de savoir que ces données doivent être comparées à d’autres outils (Google Keyword Planner, Keywordtool.io, Ahrefs ou SEMRush par exemple) si vous souhaitez obtenir des volumes de recherche représentant le marché que vous ciblez.

2. Suggestion de mots clés

keywords = pytrend.suggestions(keyword='mot clé')

La variable keywords est créée par la fonction pytrend.suggestions

Vous n’avez plus qu’à insérer votre mot clé dans le script et lancer le tout. Vous pourrez retrouver des exemples plus loin dans l’article.

df_kw = pd.DataFrame(keywords)

Nous créons le cadre pour le jeu de données df_kw à partir de la variable créée. Vous pouvez donner le nom que vous souhaitez au jeu de données.

df_kw.drop(columns= 'mid') 

Puisqu’il y a souvent du « bruit » dans le résultat, nous supprimerons l’une des colonnes (la colonne ‘mid’) grâce au module drop.

Après avoir analysé les possibilités de suggestion de mots clés, il peut être intéressant d’aller chercher un point de vue sur les tendances du jour. C’est ce que pytrends permet, et que nous traiterons dans le prochain paragraphe.

3. Les recherches journalières

df_popsearch = pytrend.trending_searches(pn='pays')

Le module trending_searches de pytrend permet de créer le cadre de jeu de données appelé df_popsearch (vous pouvez donner le nom que vous souhaitez au jeu de données). Les recherches peuvent être faites selon le pays via le paramètre pnLe pays ici s’écrit en lettres et non en code ISO.

df_popsearch.head()

Afin de valider si le résultat convient, nous afficherons seulement le début via le module head()

4. Trouver les sujets « chauds » du moment

Les recherches journalières c’est bien, mais Google Trends offre également un module hot_topic qui nous permet de voir ce qui est le plus recherché actuellement par les internautes (au global, dans une thématique, selon un pays…)

pytrend.build_payload(kw_list=['mot clé 1’, ‘mot clé 2'])

Vous pouvez rechercher, via un mot clé ou un groupe de mots clés, les sujets chauds (hot topics) reliés. 

related_queries = pytrend.related_queries()

Nous intégrons la fonction pytrend.related_queries() dans une liste nommée related_queries. Vous pouvez donner le nom que vous souhaitez à cette liste.

related_queries.values()

Une fois paramétré, il faut lancer la ligne ci-dessus pour avoir le retour des valeurs. Vous aurez une distinction entre les top recherches (top) et les recherches montantes (rising).

Il vous est aussi possible de connaître, pour un mot clé choisi, les informations top ou rising :

Related_queries['mot clé 1']['top']

5. Trending Topics en direct de Google Trends

Google Trends est connu pour son « option » Trending Topics; il s’agit même de la fonction la plus utilisée du site web. Dans le cas présent, nous pourrons l’explorer grâce à pytrends.

df_todaytt = pytrend.today_searches(pn='CA')

Ce bout de code nous permet de connaître les Trending Topics du jour. Vous pouvez gérer la partie géographique via la variable pn= (ici CA pour Canada). Nous enregistrons le tout dans un jeu de données nommé df_todaytt.

6. Exemples et retours du script

Après toutes ces étapes de code et ces utilisations possibles de pytrends, vous avez sûrement hâte de connaître le rendu. Vous êtes au bon endroit.

  • Les suggestions de mots clés – Voici un exemple pris avec le mot clé « SEO » :
  • Il faut bien sûr faire attention au bruit de ces requêtes (Seoul ou Securities and Exchange Organization of Iran), car Google Trends reste moins qualitatif dans ses propositions (l’objectif pour nous étant d’avoir des idées du marché).

    • Les tendances de recherche – Exemple pris du Canada :
    • Selon Google Trends, les tendances de recherche au Canada et au début du mois d’avril 2020 sont celles présentées ci-dessus. 

      Note : Si vous lancez le script de votre côté, il est possible que vous ayez des retours différents puisque les tendances de recherche sont liées à la saisonnalité et au pays ciblé.

      • Les mots clés liés aux termes SEO – Exemple pris avec les requêtes incluant le mot clé « SEO » :
      • Il y a encore un peu de bruit sur cette requête, et c’est aussi la force de l’exemple qui permet d’apporter une pondération humaine derrière l’automatisation de tâches par les scripts.

        Pour continuer l’analyse, vous pouvez exporter les données dans un fichier csv, par exemple :

        dataframe.to_csv(‘./chemin/d-export/document.csv’, index = False, header = True)

        Nous utilisons ici .to_csv et prenons l’exemple d’un jeu de données nommé dataframe.

        Les paramètres index = False et header = True permettent respectivement d’enlever la première colonne avec les chiffres de 0 à N et de conserver les en-têtes du tableau. À noter que ces paramètres sont sensibles à la casse, donc précisez bien False et True avec une majuscule au début du mot.

        Intégrer ces outils en temps de COVID-19

        Cette technique peut être utilisée en tout temps afin de compléter et renforcer votre stratégie marketing numérique. Nous pouvons aussi y voir une valeur ajoutée non négligeable en cette période de pandémie et mieux analyser l’impact de la COVID-19 sur les recherches des internautes.

        Les mots clés relatifs

        Il s’agit de mots clés, dans ce cas-ci reliés au coronavirus, placés en ordre d’importance (100 étant le plus important et 0 le moins important). Les termes ayant le plus grand volume de recherche sont séparés des termes ayant connu la plus forte augmentation du volume de recherche dans un temps donné.

        Suggestion de mots clés

        Il s’agit de mots clés classés par sujet, dans ce cas-ci par rapport à « coronavirus ».

        Nous pouvons faire la même chose pour connaître les sujets similaires au commerce électronique ou à la livraison.

        La tendance mondiale du moment est certainement la recherche de recettes pour faire son propre pain à la maison.

        Lorsque nous recherchons des sujets liés à « faire son pain » nous pouvons détecter des expressions pour enrichir le champ lexical des pages sur un site de cuisine ou sur un site de ventes en ligne. Cela est pratique pour le développement d’une page ou d’un groupe de page « pilar page », ou pour une chaîne Youtube lors de la mise en ligne d’une vidéo.

        Si nous procédons de la même façon avec les recettes de gâteau, des informations intéressantes en ressortent:

        Google Trends est un bon outil fourni par Google gratuitement, mais comme tous les outils, il possède ses faiblesses : limité à la comparaison de mots clés, comparaison maximum de 5 expressions, limites linguistiques avec le français québécois pour les recherches au Canada, etc.

        Des comparaisons relatives

        Un autre point essentiel à considérer est que Google Trends offre seulement des comparaisons de mots clés ayant un volume de recherche mensuel supérieur à 100Cela peut-être plus complexe à interpréter et c’est pourquoi il est recommandé de prendre un outil externe (Google Search Console, Ahref, SEM Rush…) pour accéder à des volumes des recherches plus précis. Par exemple :

        De plus, il ne faut pas oublier de contextualiser ces mots clés dans votre stratégie de positionnement globale, de votre marque ou de votre site web. Un mot clé peut subir une augmentation de volume de recherche, mais n’a pas forcément d’intérêt pour votre positionnement de marque. Par exemple, en temps de confinement, ne pensez pas covid, pensez plutôt astuces, recettes, livraison, aide, etc.

        Pytrends : les mêmes limites que Google Trends

        Dans l’ensemble, nous retrouvons les mêmes limites dans pytrends que dans Google Trends (5 mots clés, comparaison…), avec certaines limites encore plus marquées (ciblage géographique).

        L’avantage de cette API est qu’elle permet d’automatiser une partie ou la totalité de vos recherches pour vous puissiez prendre des décisions marketing plus efficacement. En automatisant, vous serez capable de connecter plusieurs outils et plusieurs API afin d’être plus rapide dans l’extraction de données et prendre des décisions sur des données vérifiées.