Dans cet article, vous découvrirez :
- Qu’est-ce que cURL ?
- Comment utiliser cURL ?
- Pourquoi cURL est-il si populaire ?
- Web scraping avec cURL
Qu’est-ce que cURL ?
cURL est un outil de ligne de commande que vous pouvez utiliser pour transférer des données via des protocoles réseau. Le nom cURL signifie « URL client » et s’écrit également « curl ». Cette commande populaire utilise la syntaxe URL pour transférer des données vers et depuis des serveurs. Curl est alimenté par libcurl, bibliothèque de transfert d’URL côté client, gratuite et facile à utiliser.
Pourquoi utiliser cURL est-il avantageux ?
Grâce à la polyvalence de cette commande, vous pouvez utiliser curl dans de nombreux contextes, notamment :
- Authentification d’utilisateur
- Posts HTTP
- Connexions SSL
- Prise en charge de proxys
- Téléchargements FTP
Le cas d’utilisation le plus simple de curl est généralement le téléchargement de sites web entiers à l’aide de l’un des protocoles pris en charge.
Protocoles curl
Bien que la liste des protocoles pris en charge par curl soit longue, curl utilise HTTP par défaut si vous n’indiquez pas de protocole spécifique. Voici la liste des protocoles pris en charge :
Installation de curl
La commande curl est installée par défaut dans les distributions Linux.
Comment vérifier si curl est déjà installé ?
1. Ouvrez votre console Linux
2. Tapez curl, puis appuyez sur Entrée.
3. Si curl est déjà installé, le message suivant s’affiche :
4. Si curl n’est pas déjà installé, le message suivant s’affiche : « command not found ». Vous pouvez ensuite vous tourner vers votre package de distribution et l’installer (voir les détails ci-dessous).
Comment utiliser cURL
La syntaxe de curl est assez simple :
Par exemple, si vous voulez télécharger une page web – appelons-la par exemple webpage.com – entrez simplement :
La commande vous donne alors le code source de la page dans la fenêtre de votre terminal. Gardez à l’esprit que si vous ne spécifiez pas de protocole, curl choisira HTTP par défaut. Vous trouverez ci-dessous un exemple de définition de protocoles spécifiques :
Si vous oubliez d’ajouter le ://, curl devinera le protocole que vous souhaitez utiliser.
Nous venons de parler brièvement de l’utilisation de base de la commande, mais vous pouvez trouver une liste d’options sur le site de documentation de curl. Ces options sont les actions possibles que vous pouvez effectuer sur l’URL. Lorsque vous choisissez une option, celle-ci indique à curl quelle action effectuer sur l’URL que vous avez indiquée. L’URL indique à cURL où cette action doit être effectuée. cURL vous permet ensuite de répertorier une ou plusieurs URL.
Pour télécharger plusieurs URL, ajoutez à chaque URL le préfixe -0 suivi d’un espace. Vous pouvez faire cela sur une seule ligne ou écrire une ligne distincte pour chaque URL. Vous pouvez également télécharger une partie d’une URL en énumérant les pages pertinentes. Par exemple :
Enregistrement du téléchargement
Vous pouvez enregistrer le contenu de l’URL dans un fichier en utilisant curl avec deux méthodes différentes :
1. La méthode -o : permet d’ajouter un nom de fichier dans lequel l’URL sera enregistrée. Cette option a la structure suivante :
2. La méthode -O : ici, vous n’avez pas besoin d’ajouter un nom de fichier, car cette option vous permet d’enregistrer le fichier sous le nom de l’URL. Pour utiliser cette option, il vous suffit d’ajouter le préfixe -O à l’URL.
Reprise du téléchargement
Il se peut que votre téléchargement s’arrête au milieu. Dans ce cas, réécrivez la commande en ajoutant l’option -C au début :
Pourquoi curl est-il si populaire ?
Curl est vraiment le « couteau suisse » des commandes ; il a été créé pour effectuer des opérations complexes. Cependant, il existe des alternatives, par exemple « wget » ou « Kurly », qui conviennent pour des tâches plus simples.
Curl est l’une des commandes favorites des développeurs, car il est disponible sur presque toutes les plateformes. Parfois, curl est même installé par défaut. Cela signifie que, quels que soient les programmes/tâches que vous exécutez, les commandes curl doivent fonctionner.
En outre, si votre système d’exploitation a moins de 10 ans, il est probable que curl soit déjà installé. Vous pouvez également lire les documents dans un navigateur et vérifier la documentation curl. Si vous exécutez une version récente de Windows, curl est probablement déjà installé. Si ce n’est pas le cas, consultez ce post sur Stack Overflow pour en savoir plus sur la manière de procéder.
Web scraping avec cURL
Conseil de pro : veillez à respecter les règles en vigueur sur un site web et, de manière générale, n’essayez pas d’accéder à un contenu protégé par mot de passe, ce qui est illégal dans la plupart des cas – ou tout du moins peu apprécié.
Vous pouvez utiliser curl pour automatiser le processus répétitif des tâches de web scraping, ce qui vous aide à éviter des tâches fastidieuses. Pour cela, vous devrez utiliser PHP. Voici un exemple que nous avons trouvé sur GitHub :
Lorsque vous utilisez curl pour effectuer du scraping sur une page web, vous disposez de trois options :
- curl_init($url) -> initialise la session
- curl_exec() -> exécute
- curl_close() -> ferme
D’autres options à utiliser sont les suivantes :
- Curlopt_url -> définit l’URL sur lequel vous voulez effectuer votre tâche de scraping
- Curlopt_returntransfer -> indique à curl d’enregistrer la page scrapée en tant que variable. (Cela vous permet d’obtenir exactement ce que vous voulez extraire de la page.)
Vous en avez assez des techniques manuelles de web scraping ?
Bright Data a déployé une solution entièrement automatisée, sans code, qui vous permet d’accéder à des sites web complets et à des points de données spécifiques d’un simple clic.