Guide du module de requêtes Python : Comment utiliser la bibliothèque de requêtes en Python ?

Publié: 2020-03-26

Lorsque vous travaillez sur le web, à des fins professionnelles ou personnelles, vous êtes susceptible de rechercher certaines informations. Ou vous pouvez utiliser un site Web pour visionner des vidéos, télécharger des données ou consulter les médias sociaux. Pour accéder à toutes ces ressources sur Internet, vous devez envoyer une demande via votre navigateur au serveur Internet.

HTTP (Hypertext Transfer Protocol) est l'ensemble des règles qui permettent la communication entre un client et un serveur sur Internet. Lors de la programmation en Python, vous pouvez effectuer ces requêtes à l'aide d'un module appelé requests . Pour acquérir une expertise en python, consultez nos cours de science des données.

Dans cet article, nous allons apprendre les bases du module de requêtes Python .

Table des matières

Module de requêtes Python

Le module de requêtes en Python permet d'échanger des requêtes sur le web. C'est une bibliothèque très utile qui possède de nombreuses méthodes et fonctionnalités essentielles pour envoyer des requêtes HTTP. Comme mentionné précédemment, HTTP fonctionne comme un système de requête-réponse entre un serveur et un client. Votre navigateur Web peut être le client et le système qui héberge le site auquel vous souhaitez accéder est le serveur. Découvrez toutes les bibliothèques Python importantes.

Lorsque vous cherchez à envoyer une requête à un serveur, vous rencontrerez deux méthodes :

  • GET – Cette méthode est utilisée pour demander des données à un serveur.
  • POST - Cette méthode est utilisée pour soumettre certaines données au serveur pour le traitement.

Le module de requêtes Python possède une API simple que vous pouvez utiliser pour gérer toutes ces requêtes. Il vous offre de nombreuses fonctionnalités intéressantes, telles que la transmission de paramètres dans les URL, l'ajout d'en-têtes, l'envoi d'en-têtes personnalisés et bien plus encore.

En savoir plus : Modules Python à connaître

Pour commencer à travailler avec le module requests, la première étape consiste à installer le module en Python. Pour cela, saisissez le code suivant en Python :

demandes d'installation $ pip

Si vous souhaitez utiliser Pipenv, un outil de packaging Python pour installer le module requests, saisissez le code suivant :

Requêtes d'installation $ pipenv

Après avoir installé le module, vous pouvez l'utiliser dans vos programmes en l'important. Utilisez le code suivant :

demandes d'importation

Maintenant, comprenons les méthodes les plus importantes du module de requêtes python - GET et POST.

OBTENIR la requête

Cette méthode est utilisée pour envoyer une requête GET à une URL. Cela indique que vous cherchez à obtenir des données à partir d'une ressource sur le Web. La syntaxe de base est :

demandes.get(url, params={clé : valeur}, args)

Ici, url est l'URL du site Web où vous souhaitez envoyer la demande. Les paramètres sont un dictionnaire ou une liste de tuples utilisés pour envoyer une chaîne de requête. Les arguments peuvent être un ou plusieurs des divers arguments nommés (facultatifs) proposés par la méthode GET. Et, ce sont :

  • allow_redirects – Il s'agit d'une valeur booléenne utilisée pour activer ou désactiver la redirection. Valeur par défaut : Vrai
  • auth - Il s'agit d'un tuple permettant d'activer une authentification HTTP. Valeur par défaut : Aucune
  • cert - Cela peut être un tuple ou une chaîne pour mentionner un fichier ou une clé de certificat. Valeur par défaut : Aucune
  • timeout - Il peut s'agir d'un tuple ou d'un nombre indiquant le nombre de secondes à attendre pour que le client établisse une connexion ou avant d'envoyer une réponse. Valeur par défaut : Aucune
  • vérifier – Il s'agit d'une chaîne ou d'une valeur booléenne qui indique la vérification du certificat TLS du serveur. La valeur par défaut est Vrai.
  • cookies - Il s'agit d'un dictionnaire de cookies que vous souhaitez envoyer à l'URL spécifiée. Valeur par défaut : Aucune
  • headers – Il s'agit d'un dictionnaire contenant les en-têtes HTTP que vous souhaitez envoyer à une URL. Valeur par défaut : Aucune
  • stream – Il s'agit d'une valeur booléenne True ou False qui indique si la réponse doit être diffusée ( True ) ou immédiatement téléchargée ( False ). Valeur par défaut : Faux
  • proxies - Il s'agit d'un dictionnaire du protocole pour l'URL du proxy. Valeur par défaut : Aucune

En savoir plus : Bibliothèques Python pour l'apprentissage automatique

Après avoir envoyé avec succès la requête GET, la méthode renverra un objet requests.Response . Cet objet stocke la réponse obtenue du serveur. Vous pouvez stocker le résultat de la méthode get() dans une variable. Ensuite, vous pouvez examiner les détails de cette réponse. Les propriétés importantes qui vous aident à cet égard sont les suivantes :

  • response.content – ​​Cela vous donne le contenu des données de la réponse.
  • response.status_code – Cela vous donne le statut de votre demande. Par exemple, 200 OK signifie que votre demande a réussi, mais 404 NOT FOUND signifie que votre demande n'a pas pu localiser la ressource pour vous.
  • response.cookies – Ceci est utilisé pour obtenir un objet CookieJar contenant tous les cookies que vous avez reçus du serveur.

Demande POST

Vous pouvez envoyer des informations à un serveur en utilisant la méthode post() . La syntaxe de base de la requête est :

demandes.post(url, data={clé : valeur}, json={clé : valeur}, args)

Certains des paramètres importants sont :

  • url - Il s'agit de l'URL à laquelle vous souhaitez envoyer des données. C'est un paramètre obligatoire.
  • data – Il s'agit d'un paramètre facultatif qui spécifie un dictionnaire, un objet fichier ou un tuple que vous souhaitez envoyer à l'URL.
  • json - Il s'agit de l'objet JSON à envoyer à l'URL.

args peut être l'un des différents arguments nommés, tels que :

  • files – Il s'agit d'un dictionnaire de fichiers à envoyer à l'URL.
  • headers – Un dictionnaire d'en-têtes HTTP à envoyer à l'URL spécifiée.
  • cookies – Ceci indique le dictionnaire des cookies que vous souhaitez envoyer.

Tout comme get(), la méthode post() renvoie également un objet requests.Response.

Emballer

Le didacticiel du module de requêtes python ci-dessus vous aidera à effectuer des requêtes de serveur de base. Une chose à garder à l'esprit est que la méthode get() est moins sécurisée que post(). En effet, dans get(), les paramètres sont transmis via l'URL. Ainsi, des informations sensibles, telles que les mots de passe, peuvent être exposées. Ainsi, utilisez post() dans les situations où des mots de passe ou des informations importantes doivent être échangés.

Si vous êtes curieux d'en savoir plus sur Python, la science des données, consultez le programme Executive PG en science des données de IIIT-B & upGrad qui est créé pour les professionnels en activité et propose plus de 10 études de cas et projets, des ateliers pratiques, du mentorat avec des experts de l'industrie , 1-on-1 avec des mentors de l'industrie, plus de 400 heures d'apprentissage et d'aide à l'emploi avec les meilleures entreprises.

A quoi sert le module Request en Python ?

Pour effectuer des requêtes HTTP vers n'importe quelle URL spécifiée, la bibliothèque Requests est utilisée dans Python. Il existe plusieurs fonctionnalités intégrées dans Python pour gérer à la fois les requêtes et les réponses.

Afin de faire une requête HTTP à l'URL spécifiée, le module Python Requests est utilisé à l'aide de différentes requêtes telles que HEAD, GET, PATCH, POST et PUT. La raison principale derrière l'envoi d'une requête HTTP est soit de récupérer des données du serveur, soit de pousser certaines données vers le serveur. On peut dire qu'une requête agira comme un pont entre le client et le serveur pour envoyer et recevoir des requêtes. Les 5 types de requêtes sont utilisés à des fins différentes selon les exigences.

Quelles sont les 3 parties d'un message de réponse ?

Tous les messages HTTP sont des blocs de données simples et formatés. Chaque message comprendra soit le message de demande du côté client, soit le message de réponse du côté serveur. Chaque message HTTP est divisé en 3 parties :

1. Une ligne de départ pour décrire le message.
2. Un bloc d'en-têtes composé de tous les attributs.
3. Une partie de corps facultative contenant les données nécessaires à transmettre.

L'URL dans tout message HTTP fait référence à l'adresse où se trouvent les ressources. D'autre part, le protocole fera référence au protocole HTTP qui doit être utilisé pour récupérer les informations.

Que fait la méthode POST en Python ?

Habituellement, la méthode POST est utilisée dans les formulaires lorsque les données doivent être envoyées des formulaires au serveur pour mettre à jour les données existantes dans les serveurs. Le module de demandes fournit la méthode POST qui peut envoyer directement les données au serveur à l'aide de l'URL et des valeurs des paramètres. Il s'agit d'une méthode de demande plus susceptible d'être utilisée pour soumettre n'importe quel formulaire Web ou télécharger n'importe quel fichier.