Le web scraping consiste simplement à extraire les données d'une page web. D'une certaine manière, cela vaut même si vous le faites manuellement, mais ce n'est pas ce sur quoi nous allons nous concentrer ici. Nous allons plutôt examiner les différents types de produits que vous pourriez utiliser.
Certains outils sont conçus pour être conviviaux, quel que soit votre niveau de connaissance en programmation. Les extensions de navigateur constituent le produit le plus basique. Une fois installées, il suffit à l'utilisateur de sélectionner les extraits de données dont il a besoin sur la page web, et l'extension les extraira dans un fichier CSV ou JSON. Bien que cette option ne soit pas rapide, elle est utile si vous n'avez besoin que de fragments de contenu spécifiques sur de nombreux sites web différents.
Il existe ensuite les logiciels dédiés au web scraping. Ces options offrent aux utilisateurs une interface permettant d’effectuer le scraping. Il existe une grande variété de produits parmi lesquels choisir. Par exemple, le logiciel peut utiliser soit la machine de l’utilisateur, soit un serveur cloud contrôlé par les développeurs du produit, soit une combinaison des deux. Par ailleurs, certaines options exigent que les utilisateurs comprennent et créent leurs propres scripts, tandis que d’autres ne le font pas.
Quelques fournisseurs de services de web scraping ont choisi de limiter encore davantage l'intervention de l'utilisateur. Leur solution consiste à offrir aux clients l'accès à un tableau de bord pour saisir des URL et recevoir les données nécessaires, mais l'ensemble du processus de scraping se déroule en arrière-plan.
Par rapport à l'utilisation d'une API publique, les outils de web scraping ont l'avantage de fonctionner sur n'importe quel site web et de collecter toutes les données d'une page. Certes, le web scraping présente ses propres défis :
- Les sites web dynamiques ne chargent que du code HTML dans les interfaces de navigateur ;
- Les captchas peuvent empêcher le scraper d'accéder à certaines pages ;
- Les logiciels de détection de bots peuvent identifier les scrapers et bloquer leur adresse IP pour les empêcher d'accéder au site web.
Pour surmonter ces obstacles, les scrapers modernes utilisent un navigateur sans interface graphique pour exécuter le JavaScript et un pool de proxys pour faire passer le scraper pour un visiteur lambda.
Parmi ces outils d'extraction de données, un type nous intéresse particulièrement car il s'agit d'une API. Pour être plus précis, il s'agit d'une API de web scraping.