Pour suivre le nombre de followers sur Twitter ou le nombre de likes sur votre page Facebook, il ne faut plus perdre de temps à aller sur la page quasi-quotidiennement. C’est le genre de choses qu’on peut automatiser assez facilement sur Google Sheet, et on va vous montrer comment. La recette est plutôt simple. On utilise la fonction IMPORTXML pour récupérer les informations directement votre page Twitter, Facebook ou autre. Ensuite, on utilise un petit script qui va sauvegarder cette information quotidiennement pour qu’on soit en mesure de suivre l’évolution. On vous détaille la démarche dans l’article.
Pour ceux qui connaissent déjà La Fabrique du Net, vous savez qu’on aime proposer des modèles de documents, cf. veille automatisé, business plan, et de nombreux autres. Et une fois n’est pas coutume, le template de reporting Social Media est en téléchargement gratuit en bas de l’article.
#1 – Récupérer les statistiques (nb likes, followers, ..) depuis les pages publiques grâce à la fonction IMPORTXML
Obtenir le nombre de followers Twitter
Grâce à une fonction tout simple sur Google Sheet, on peut récupérer automatiquement le nombre de tweets, de followers / followings de n’importe quel compte.
Un petit mot sur la méthode. A partir de l’identifiant twitter, on génère l’URL de la page publique du profil Twitter en utilisant la fonction CONCATENER. C’est là que réside en réalité le coeur de la technique, car il faut prendre l’URL de profil mobile pour que cela fonctionne correctement. Ensuite, on utilise la fonction IMPORTXML qui permet de récupérer une information ciblée dans une page HTML. Cette fonction comporte deux paramètres, l’URL du profil Twitter et un « XPATH » qui permet de cibler les informations qu’on souhaite récupérer dans la page HTML. Toute la difficulté est évidemment de trouver des « XPATH » qui fonctionnent bien. Il faut bien garder à l’esprit que la méthode n’est pas éternelle. Si la structure HTML de la page change, votre XPATH risque de ne plus fonctionner. A suivre probablement dans les commentaires.
A noter qu’on a rajouté la date du jour, à l’aide la fonction NOW(), la date nous servira dans la suite pour historiciser les données.
FORMULES GOOGLE SHEET
> Récupérer les données depuis la page Twitter
=ARRAY_CONSTRAIN(SI(ESTVIDE(A2);"";importHTML("http://m.twitter.com/"&A2;"table";3));1;3)
en remplaçant A2 par la cellule qui contient le nom du profil Twitter. Le résultat doit prendre la forme d’un tableau d’une ligne et 3 colonnes avec le nombre de tweets, de followings et de followers.
> Filtrer les données pour récupérer uniquement le nombre de followers
=SI($A2="";"";REGEXREPLACE(SUBSTITUE(SUBSTITUE(I2;F$1;"");",";"");"\n";"")))
en remplaçant I2 par la cellule qui contient le résultat de la 3ème colonne de la formule ci-dessus.
Obtenir le nombre de Likes d’une page Facebook
La même démarche permet de récupérer le nombre de likes de n’importe quelle page Facebook.
Pour ceux qui veulent comprendre plus en détail la formule utilisée. On a rajouté des SUBSTITUE pour supprimer le mot « likes » qui apparait en plus du nombre, et pour supprimer la virgule afin que le résultat soit bien considéré comme un nombre.
FORMULE GOOGLE SHEET
=SUBSTITUE(SUBSTITUE(importxml(B2;"//span[@id='PagesLikesCountDOMID']");" likes";"");",";"")
en remplaçant A2 par la cellule qui contient le nom du profil Twitter.
Le résultat doit prendre la forme d’un tableau d’une ligne et 3 colonnes avec le nombre de tweets, de followings et de followers.
#2 – Sauvegarder les données tous les jours grâce à un Google Apps script
C’est la partie que je préfère. Tout simple, mais diablement efficace. On a préparé un script qui copie simplement la ligne avec les résultats tout en bas de la feuille. Et Google Apps propose une fonctionnalité qui permet de déclencher automatiquement ce script tous les jours. Pour les besoins de la démo, on a rajouté un petit menu qui permet de déclencher le script.
L’utilisation des scripts sur Google Sheet peut paraître technique, mais elle ne l’est vraiment pas quand il s’agit simplement de copier un script déjà réalisé. Pour accéder à l’éditeur de scripts, menu Outils, puis Editeurs de scripts. Un nouvel onglet s’ouvre avec l’éditeur. Vous arrivez dans le « Projet » par défaut, avec un fichier créé par défaut qui s’appelle « Code.js ». Il vous suffit de copier / coller le script ci-dessous, de sauvegarder, et le tour est joué. Google Apps vous invite à confirmer que le script peut accéder à Google Spreadsheet, et vous pouvez tester le résultat.
// Créer un menu pour actualiser le reporting à la main si besoin function onOpen() { var ui = SpreadsheetApp.getUi(); ui.createMenu('Actualisation reporting') .addItem('Save Data - Twitter','saveDataTwitter') .addItem('Save Data - Facebook','saveDataFacebook') .addToUi(); } // Sauvegarder les données Twitter dans une nouvelle ligne en bas du même Sheet function saveDataTwitter() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[1]; var handle = sheet.getRange('Twitter!A2').getValue(); var url = sheet.getRange('Twitter!B2').getValue(); var date = sheet.getRange('Twitter!C2').getValue(); var tweets = sheet.getRange('Twitter!D2').getValue(); var following_count = sheet.getRange('Twitter!E2').getValue(); var follower_count = sheet.getRange('Twitter!F2').getValue(); sheet.appendRow([handle,url,date,tweets,following_count,follower_count]); } // Sauvegarder les données Facebook dans une nouvelle ligne en bas du même Sheet function saveDataFacebook() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[2]; var id = sheet.getRange('Facebook!A2').getValue(); var url = sheet.getRange('Facebook!B2').getValue(); var date = sheet.getRange('Facebook!C2').getValue(); var likes = sheet.getRange('Facebook!D2').getValue(); sheet.appendRow([id,url,date,likes]); }
Une fois le script enregistré et testé, il faut utiliser la fonction « Déclencheurs » (icône de l’heure) pour automatiser le déclenchement des scripts tous les jours.
#3 – Construction du reporting Social Media sous Google Sheet
Maintenant que nous disposons d’un tableau avec les données historiques pour chaque réseau social, on peut construire un dashboard sympathique. On vous a préparé un modèle de reporting facile à décliner pour vos besoins. L’idée est d’avoir un bloc pour chaque réseau social avec 2/3 KPI sur la situation actuelle et un graphique sur l’évolution d’un KPI. A décliner ensuite pour Instagram, Youtube et tous les autres réseaux sociaux qui vous intéressent. A noter qu’il serait très facile de construire un reporting sur Google Data Studio qui serait alimenté par le Google Sheet.
Pour télécharger le template de reporting, il vous suffit de laisser votre email dans le champ suivant. Vous recevrez le lien pour accéder au Google Sheet, et vous pourrez le copier sur votre Drive personnel.
Tous nos modèles téléchargeables
le :
Bonjour.
merci pour votre blog !
cependant, lorsque j’essaye de télécharger le template de « reporting de réseaux sociaux », je reçois plutôt le template de CEO.
le :
Je vous l’ai envoyé par mail 🙂
N’hésitez pas à m’écrire si vous avez la moindre question !
le :
Bonjour
Merci pour ces infos et ce site très fourni et pertinent.
J’ai essayé de télécharger plusieurs templates, jamais reçus 🙁
Merci
Bien à vous
Lorraine
le :
Je vous les ai envoyés par mail. Je reste disponible si vous avez la moindre question 🙂
le :
Bonjour. J’ai essayé sur plusieurs navigateurs mais je n’ai jamais reçu le template.
le :
Veuillez consulter votre boite mail. Je vous ai fait parvenir le cahier des charges que vous avez demandé.
N’hésitez pas à revenir vers moi si le problème persiste !
le :
Bonjour, je viens de m’inscrire à la Newsletter mais je n’arrive pas à télécharger votre template :/
le :
Je vous ai transmis le cahier des charges directement sur votre boite mail. Vous pouvez me contacter si vous avez la moindre autre question.
le :
Bonjour,
Très intéressant, le lien ne fonctionne plus ?
le :
Bonjour, le lien fonctionne.
Il arrive qu’il faille mettre à jour certain navigateur ou en essayer un autre (Opéra, Firefox, Chrome…).
Je vous envoie le lien par mail directement 🙂
le :
Bonjour, merci pour l’article mais pour Facebook, ça ne fonctionne plus. Est-ce que ça vient du XPath qui n’est plus bon ? Merci
le :
Bonjour, une simple réactualisation de l’URL dans la cellule B2 permet de mettre à jour le nombre de Likes.
A bientôt,
le :
Bonjour,
Merci pour cet article cependant je n’arrive pas à dupliquer le template pour Instagram, ça ne fonctionne pas … Pouvez-vous m’aider svp ?
le :
Bonjour Morgane,
Pour vous aider, voici un article pour décliner la formule pour Instagram.
A bientôt,
le :
Bonjour,
Je souhaite décliner le template pour Instagram mais je n’y arrive pas. Pouvez-vous m’aider svp ?
le :
Bonjour Morgane,
Pour vous aider, voici un article pour décliner la formule pour Instagram.
A bientôt,
le :
Bonjour,
Merci pour cet article !
Il semblerait que le lien de téléchargement ne soit plus effectif. je n’ai pas reçu le mail avec le lien…
J’ai tenté l’opération avec 2 adresses email différentes et vérifié mes spams dans chacune mais toujours rien…
le :
Bonjour, le lien fonctionne. Il arrive qu’il faille mettre à jour certain navigateur ou en essayer un autre (Opéra, Firefox, Chrome…).
Je vous envoie le lien par mail directement.
le :
Bonjour
comment faire pour suivre plusieurs compte fb et twitter sur un même dashboard
le :
Bonjour,
Il semblerait que le lien de téléchargement ne soit plus effectif. je n’ai pas reçu le mail avec le lien…
le :
Bonjour,
Avez-vous bien vérifié vos SPAMs ? Bien que ce soit assez rare que l’on finisse comme indésirable, néanmoins ça vaut le coup de vérifier. Et de recommencer l’opération si besoin ! Bien à vous!
le :
Bonjour, merci pour ce fichier, juste une petite question, est-ce que l’on peut modifier une des formule pour récupérer les données Instagram ?
le :
Oui, tout à fait, c’est la même logique pour tous les réseaux sociaux.
Voilà un article qui devrait vous aider pour décliner la formule pour Instagram.
le :
Merci pour l’astuce. C’est très intéressant et visiblement facilement applicable.
le :
bonjour ,
merci pour l’outil je l’ai téléchargé mais j’ai du mal à mettre à jour l’historique pour ma page fb et mon compte twitter pourriez vous m’indiquer les étapes à suivre svp 🙂 ?
le :
J’aurais clairement besoin d’un peu plus d’infos pour vous aider…
Je vais essayer de vous donner des guidelines générales pour débugger le fichier, cela pourra peut être aider d’autres personnes.
Le principe général est simple, il y a un script qui copie la ligne principale et la colle en bas de l’onglet Twitter (ou Facebook) tous les jours.
Pour diagnostiquer, puis corriger le problème, il faut savoir si le souci se situe au niveau du script, ou de son déclenchement automatique tous les jours.
Pour cela, une fois que vous avez copié / collé le fichier sur votre Drive personnel, je vous invite à :
1. Cliquer sur le menu « Actualisation reporting » puis « Save Data – Twitter ». La première fois, vous êtes invité à confirmer que vous accordez vos droits au script. Une fois confirmé, une nouvelle ligne doit s’ajouter en bas de l’onglet Twitter. Si cela ne fonctionne pas, c’est que le problème est au niveau du script (ou des droits d’accès). Le script fonctionnant sur le fichier d’origine, il faut ouvrir l’éditeur de script de votre fichier (celui sur votre Drive personnel), puis s’assurer d’une part que le code est le même que le fichier d’origine, et ensuite lancer la lecture depuis l’éditeur de scripts pour ré-autoriser les droits. Aucune raison que cela ne fonctionne pas.
2. Une fois que vous êtes assuré que le script fonctionne bien, vous pouvez vérifier après 2 jours si une nouvelle ligne s’est bien ajoutée automatiquement. Si la réponse est non, je vous inviterais à ouvrir l’éditeur de scripts, et le menu « Déclencheurs » (avec l’icône Horloge) pour vous assurer que les scripts sont bien configurés pour être déclenchés tous les jours (cf. tutoriel).
le :
Sacrément intéressant, merci !jo