Que vous soyez “digital native” ou immigrant du numérique, vous connaissez probablement les fonctions de base d’Excel. En tant que outil de visualisation de base, Excel permet à accomplir des tâches simples telles que le tri, le filtrage, la mise en évidence de données, la réalisation de graphiques, etc. Quand il s’agit de données structurées, nous pouvons même effectuer des analyses de données avancées en utilisant des modèles de pivot et de régression dans Excel. Mais le problème est : comment pouvons-nous extraire des données d’une page web vers Excel ? Le copier-coller manuel ? cela serait extrêmement fastidieuse. Dans cet article, je présenterai plusieurs façons pour récupérer des données Web et les mettre dans Excel, je suis sûr que ces quelques méthodes constituent une économie de temps et d’énergie.
Il existe de nombreuses façons de scraper des sites Web en utilisant des langages de programmation tels que PHP, Python, Perl, Ruby, etc. Ici, nous parlons simplement des méthodes de non-codage pour récupérer des données de sites Web dans Excel surtout à l’intention des non-codeurs.
Excel pour extraire des données des pages web
Excel lui-même est un outil puissant dans la gestion de données et la visualisation de données. Tout d’abord, voyons comment Excel aide à obtenir les données à partir des pages Web et parlons un peu des limits de cette méthode.
Obtenir des données Web à l’aide de requêtes Web Excel
Les requêtes Web Excel sont utilisées pour récupérer rapidement des données d’une page Web standard dans une feuille de calcul Excel. Il peut détecter automatiquement les tableaux intégrés dans le HTML de la page Web. Les requêtes Web Excel peuvent également être utilisées dans les situations où une connexion ODBC (Open Database Connectivity) standard est difficile à créer ou à gérer.
Vous pouvez directement extraire les données d’un tableau de n’importe quel site Web vers Excel à l’aide de requêtes Web Excel.
Le processus se résume à plusieurs étapes simples (consultez cet article) :
1. Accéder aux données> Obtenir des données externes> À partir du Web
2. Une fenêtre de navigateur nommée « Nouvelle requête Web » apparaîtra
3. Dans la barre d’adresse, écrire l’adresse Web cible
(source : excel-university.com)
4. La page se chargera et affichera des icônes jaunes en regard des données / tableaux.
5. Sélectionner celui qui convient à votre besoin
6. Appuyer sur le bouton Importer.
Vous avez maintenant les données Web dans la feuille de calcul Excel – parfaitement disposées en lignes et en colonnes à votre guise.
(source : excel-university.com)
Obtenir des données Web à l’aide d’Excel VBA
La plupart d’entre nous utiliseraient largement les formules dans Excel (par exemple = avg (…), = sum (…), = if (…), etc.), mais il se peut qu’on soit moins familier avec le langage intégré – Visual Basic pour Application aka VBA. Il est communément appelé “Macros” et ces fichiers Excel sont enregistrés au format **. Xlsm. Avant de l’utiliser, vous devez d’abord activer l’onglet Développeur dans le Ribbon (clic droit sur Fichier -> Personnaliser le Ribbon -> cocher l’onglet Développeur). Ensuite, configurez votre mise en page. Dans cette interface de développeur, vous pouvez écrire du code VBA attaché à divers événements. Cliquez ICI (https://msdn.microsoft.com/en-us/library/office/ee814737(v=office.14).aspx) pour démarrer avec VBA dans Excel 2010.
Utiliser Excel VBA va être un peu technique – ce n’est pas très convivial pour les non-programmeurs. VBA fonctionne en exécutant des macros, des procédures étape par étape écrites dans Excel Visual Basic. Pour récupérer des données de sites Web vers Excel à l’aide de VBA, nous devons créer ou obtenir un script VBA pour envoyer des requêtes à des pages Web et obtenir des données renvoyées à partir de ces pages Web. Il est courant d’utiliser VBA avec XMLHTTP et des expressions régulières pour analyser les pages Web. Pour Windows, vous pouvez utiliser VBA avec WinHTTP ou InternetExplorer pour récupérer les données des sites Web vers Excel.
Après un peu de patience et de pratique, vous trouverez intéressant d’apprendre à écrire du code Excel VBA et d’acquérir quelques connaissances en HTML pour faciliter et rendre plus efficace l’automatisation des tâches répétitives. Il existe de nombreux documents et forums qui vous permettront d’apprendre à écrire du code VBA.
Seulement, des limitions sont inévitables :
👎 limité à un petit nombre de données : c’est évident que Excel est excellent pour récupérer les données de tableau sur des pages Web mais il faut comprendre qu’il ne s’agit pas d’un outil de web scraping. C’est pourquoi les requêtes d’Excel ne peuvent pas répondre aux besoins d’une grande quantité de données pour les entreprises.
👎 limité aux données de tableau : Excel ne peut que aider à récupérer les données dans les tableaux et si on veut gratter celles à l’extérieur des tableaux, il faut trouver une autre solution.
👎 limité à la récupération des données de la page actuelle : on sait que souvent les données voulues se cachent après une pagination Ajax, un scrolling ou on veut parfois collecter les données de plusieurs pages. Dans ces cas-là, Excel n’aide pas trop.
👎 à court des fonctions importantes : comme la collecte sur Cloud, la nettoyage, la déduplication, cette dernière est indispensable dans la plupart des cas pour éliminer les copies excessives de données et réduire considérablement les besoins en capacité de stockage.
Outils de web scraping pour extraire les données vers Excel
Pour ceux qui recherchent un outil facile et conviviale pour extraire les données des pages vers Excel et ne veulent pas configurer le code VBA vous-même, il est évidemment un bon choix d’utiliser des outils de Web scraping et voilà une liste de 30 outils de web scraping. Je vous recommende fortement Octoparse.
Son slogan est de “extraire les données Web en 3 étapes” et “Pointez, cliquez et extrayez. Tout cela sans une seule ligne de code !”. Octoparse fournit à ses utilisateurs des modèles de web scraping gratuits qui couvrent la plupart des sites populaires du monde. Au cas où les modèles font faute, l’auto-détection est à votre service. Il peut détecter automatiquement les données de liste (les éléments de texte et les liens par exemple), les boutons “Page suivante”, les boutons “Charger plus” et le défilement d’une page vers le bas, puis configurer automatiquement la tâche de grattage. Et quant à ceux qui sont ambitieux pour scraper des sites spéciaux, ils peuvent configurer les tâches par eux-même. Ne vous inquiétez pas car Octoparse prépare de riches tutoriels pour vous et aussi le support génial. Il s’agit de quelque chose de satisfaisant et de fiable de récupérer un grand nombre de données par lui-même.
Chaque outil de Web scraping a ses avantages et ses inconvénients et vous pouvez choisir celui qui correspond le mieux à vos besoins.
La vidéo ci-dessous montre comment utiliser un outil de Web scraping pour extraire les données de shopify.
Externaliser votre projet Web Scraping
Si le temps vous est le plus précieux et que vous souhaitiez vous concentrer sur vos activités principales, il est la meilleure option de confier le travail de Web scraping à une équipe professionnelle qui possède de l’expérience et de l’expertise. La récupération de données n’est pas très facile car on rencontre toujours des techniques anti-scraping. Quand il s’agit d’un grand nombre de données dynamiques, on doit exécuter le web scraping en temps réel. Tout cela nécessite des énergies.
Octoparse qu’on vient de mentionner offre aussi des services de données dont l’objectif est de vous aider à obtenir des données de sites Web de manière appropriée et à vous fournir des données structurées dans une feuille Excel ou dans n’importe quel format dont vous avez besoin.