CodeGym /Cours Java /Python SELF FR /Travail avec le réseau

Travail avec le réseau

Python SELF FR
Niveau 23 , Leçon 2
Disponible

3.1 Module requests

Pour un travail de base avec Internet en Python, il y a la bibliothèque requests. Elle fournit une interface pratique pour travailler avec le réseau, permettant d'envoyer des requêtes HTTP et de recevoir des réponses avec un minimum d'effort.

Cette bibliothèque n'est pas incluse avec Python, donc avant de l'utiliser, tu dois l'installer via le gestionnaire de paquets.

Ouvre ton terminal et écris :


pip install requests
        

Après avoir installé la bibliothèque, tu peux utiliser le module requests dans tes projets. Par exemple, voici comment tu peux déterminer ton adresse IP externe :


import requests

response = requests.get("http://ip.jsontest.com/")
print(response.status_code)  # Affiche le code de statut de la réponse
print(response.json())       # Affiche la réponse JSON

Ici, nous avons envoyé une requête au service (site) ip.jsontest.com, qui retourne un objet JSON avec l'adresse IP, depuis laquelle la requête a été envoyée. L'envoi et la réception de la réponse sont effectués en une seule ligne — c'est très pratique. Dans les lignes restantes, nous avons simplement imprimé la réponse du serveur.

Dans l'exemple ci-dessus, nous avons appelé la méthode get(), ci-dessous je vais te parler de cette méthode et d'autres méthodes de l'objet requests.

3.2 Liste des méthodes

L'objet requests a des méthodes pour toutes les occasions, ou plutôt une méthode pour chaque type de requête HTTP.

Méthode Description
requests.get() Envoie une requête GET pour obtenir des données du serveur.
requests.post() Envoie une requête POST pour envoyer des données au serveur.
requests.put() Envoie une requête PUT pour mettre à jour des données sur le serveur.
requests.delete() Envoie une requête DELETE pour supprimer des données du serveur.
requests.head() Envoie une requête HEAD pour obtenir les en-têtes sans le corps de la réponse.
requests.options() Envoie une requête OPTIONS pour obtenir les méthodes et paramètres pris en charge par le serveur.
requests.patch() Envoie une requête PATCH pour mettre à jour partiellement des données sur le serveur.
requests.request() Méthode principale pour envoyer tous les types de requêtes HTTP.

Nous allons examiner ci-dessous les plus basiques d'entre elles.

3.3 Envoi d'une requête GET et d'une requête POST

Une requête GET se compose généralement uniquement de l'URL, ou peut contenir une chaîne de paramètres supplémentaire.

1. Envoi d'une requête GET simple

La requête GET est utilisée pour obtenir des données du serveur. Le paramètre obligatoire est l'URL à laquelle la requête est envoyée.

Exemple :


import requests

response = requests.get('https://jsonplaceholder.typicode.com/posts')
print(response.status_code)  # Affiche le code de statut de la réponse
print(response.json())       # Affiche la réponse JSON

2. Envoi d'une requête GET avec des paramètres

L'URL peut également contenir des paramètres supplémentaires sous forme de chaîne key=value&key2=value2&…

Dans notre cas, les paramètres sont passés sous forme de dictionnaire et de la variable params :


import requests

params = {'userId': 1}
response = requests.get('https://jsonplaceholder.typicode.com/posts', params=params)
print(response.json())

3. Envoi d'une requête POST

La requête POST peut contenir un corps de requête : texte, JSON ou même une image.

Exemple :


import requests

data = {
    'title': 'foo',
    'body': 'bar',
    'userId': 1
}
response = requests.post('https://jsonplaceholder.typicode.com/posts', json=data)
print(response.status_code)
print(response.json())

3.4 Envoi d'une requête PUT et d'une requête DELETE

1. Envoi d'une requête PUT

La requête PUT est utilisée pour mettre à jour des données sur le serveur.


import requests

data = {
    'title': 'foo',
    'body': 'bar',
    'userId': 1
}
response = requests.put('https://jsonplaceholder.typicode.com/posts/1', json=data)
print(response.status_code)
print(response.json())

2. Envoi d'une requête DELETE

La requête DELETE est utilisée pour supprimer des données du serveur.


import requests

response = requests.delete('https://jsonplaceholder.typicode.com/posts/1')
print(response.status_code)
print(response.json())

Pour mieux comprendre le concept des requêtes GET, POST, PUT et DELETE, tu devras lire des leçons sur le fonctionnement du réseau, Internet, le web et HTTP. Tout cela t'attend dans un avenir proche.

Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION