Python

Créer une réponse JSON en Python

Créer une réponse JSON en Python

Le fichier JSON (JavaScript Object Notation) est un support très populaire pour échanger des données entre différents formats. Il contient des données au format texte prises en charge par divers langages tels que Python, PHP, PERL, etc. L'objectif principal du fichier JSON est de transférer des données entre le serveur et le client. Les requêtes sont générées par Python pour récupérer les données d'un URI de ressource particulier. Si la réponse de la demande est renvoyée au format JSON, le contenu de la réponse peut être récupéré à l'aide de la réponse.fonction json(). Il renvoie la réponse en utilisant un objet dictionnaire Python. La façon dont cette fonction peut être utilisée pour analyser la réponse JSON à l'aide de la bibliothèque de requêtes Python sera présentée dans ce didacticiel.

Réponse JSON :

Le module de requête de Python contient le décodeur JSON pour travailler avec les données JSON. La réponse.la fonction json() renvoie une réponse JSON si le décodeur JSON fonctionne correctement. La réponse.La fonction json() lève l'exception si le décodeur JSON échoue et que la réponse JSON ne contient aucune donnée ou donnée invalide. La valeur de retour de la réponse.fonction raise_for_status() ou la réponse.status_code doit être vérifié avant d'exécuter la réponse.fonction json().

Différentes utilisations de la réponse.json() :

Trois utilisations différentes de la réponse.la fonction json() sera montrée dans cette partie du tutoriel.

Exemple-1 : Utilisation simple de la réponse.json()

L'utilisation simple de la réponse.la fonction json() sera expliquée dans cet exemple. La réponse à la demande d'obtention de l'URI, https://api.github.com/ est stocké dans une variable nommée réponse. Ensuite, la valeur de la variable de réponse est vérifiée. Si la variable de réponse contient une réponse invalide, elle imprimera un message d'erreur. Si la variable de réponse contient une réponse valide qui est le code d'état de la réponse et son contenu, un message de réussite s'imprimera.

# Module de requêtes d'importation
demandes d'importation
# Créer une demande d'obtention
réponse = demandes.get('https://api.github.com/')
# Vérifiez la réponse
si réponse :
# Imprimer le code d'état de la réponse
print('Le code d'état de la réponse est %d' %response.code_état)
# Imprimer le contenu JSON
print('Le contenu JSON est : \n%s' %response.json())
# Imprimer le message de réussite
print('\nLa demande est traitée avec succès.')
autre:
# Imprimer le message d'erreur pour la réponse invalide
print('Réponse invalide.')

Production:

La sortie suivante apparaîtra après l'exécution du script ci-dessus.

Exemple 2 : Utilisation de la réponse.json() avec gestion des exceptions

La manière d'utiliser la réponse.La fonction json() avec gestion des exceptions sera affichée dans cet exemple. Le module HttpError est importé avec le module de requête dans le script pour gérer l'exception. Ici, l'adresse URI sera prise de l'utilisateur pour utiliser les requêtes.obtenir () fonction. La réponse de cette requête sera stockée dans la variable de réponse. Ensuite, réponse.La fonction raise_for_status() est utilisée pour vérifier la réponse de la requête si elle est valide ou invalide. Si la réponse est invalide, une exception sera générée et le code de tout bloc except sera exécuté en fonction de l'exception. Si la réponse est valide, alors le contenu de la variable de réponse sera itéré à l'aide d'une boucle for pour imprimer les valeurs du dictionnaire dans chaque ligne qui contient les données de réponse.

# Module de requêtes d'importation
demandes d'importation
# Importer HTTPError pour la gestion des exceptions
des demandes.exception importation HTTPError
# Définir l'URI
uri = input('Entrez un URI valide :\n')
# Imprimer le message d'attente
print('En attente de la réponse… \n')
essayer:
# Créer une demande d'obtention pour lire le contenu des flux de github
réponse = demandes.obtenir (uri)
# Lever une exception si la réponse a échoué
réponse.raise_for_status()
# Lire le contenu JSON
jsonResponse = réponse.json()
print("Le contenu JSON est : \n")
# Lire et imprimer chaque paire clé-valeur de la réponse JSON
pour la clé, valeur dans jsonResponse.éléments():
print(clé, ":", valeur)
# Imprimer le message d'erreur pour l'erreur HTTP
sauf HTTPError en tant que http_err :
print('Une erreur HTTP s'est produite : %s' %http_err)
# Imprimer le message d'erreur pour l'erreur HTTP
sauf Exception comme erreur :
print('Une autre erreur s'est produite : %s' %err)

Production:

La sortie suivante apparaîtra après l'exécution du script lorsqu'une valeur URI de non-existence sera fournie par l'utilisateur. Ici, l'exception HTTPError avait été générée avec le message d'erreur correspondant.


La sortie suivante apparaîtra après l'exécution du script lorsqu'une valeur URI non valide sera fournie par l'utilisateur. Ici, l'autre exception avait été générée avec un message d'erreur correspondant.

La sortie suivante apparaîtra après l'exécution du script lorsqu'une valeur URI valide sera fournie par l'utilisateur. Ici, le contenu JSON a été correctement imprimé.

Exemple-3 : Utilisation de la réponse.json() avec chaîne de requête

La manière d'utiliser la réponse.La fonction json () avec la chaîne de requête sera affichée dans cet exemple. Ici, les demandes.La fonction get () a utilisé une valeur de chaîne de requête avec l'URI à l'aide de paramètres. Il recherchera les entrées pour le langage PERL dans les référentiels donnés. Si la variable de réponse contient une réponse valide, le nom et la description du référentiel seront imprimés, sinon, il y aura un message d'erreur.

# Module de requêtes d'importation
demandes d'importation
# Recherche dans le référentiel de github à l'aide de la chaîne de requête
réponse = demandes.obtenir(
'https://api.github.fr/recherche/dépôts',
params='q': 'requests+language:perl',
)
# Vérifiez la réponse
si réponse :
# Lire le contenu JSON
json_response = réponse.json()
# Lire l'élément de référentiel particulier
référentiel = json_response['items'][0]
# Imprimer le nom du référentiel
print('Nom du référentiel : %s' %référentiel["nom"])
# Imprimer la description du référentiel
print('Description du référentiel : %s' %repository["description"])
autre:
# Imprimer le message d'erreur pour la réponse invalide
print('Réponse invalide.')

Production:

La sortie suivante apparaîtra après l'exécution du script ci-dessus. Le nom du référentiel et la description du langage PERL avaient été imprimés ici.

Conclusion:

Différentes manières d'envoyer la demande à un URI particulier et de lire la réponse à l'aide de la réponse.la fonction json () a été montrée dans ce tutoriel à l'aide d'exemples simples. J'espère que ce tutoriel aidera les lecteurs à comprendre l'utilisation de la réponse JSON en Python et à l'appliquer correctement dans leur script lorsque cela est nécessaire.

Meilleurs jeux à jouer avec le suivi des mains
Oculus Quest a récemment introduit l'idée géniale du suivi manuel sans contrôleurs. Avec un nombre toujours croissant de jeux et d'activités qui exécu...
Comment afficher la superposition OSD dans les applications et jeux Linux en plein écran
Jouer à des jeux en plein écran ou utiliser des applications en mode plein écran sans distraction peut vous couper des informations système pertinente...
Top 5 des cartes de capture de jeu
Nous avons tous vu et aimé des gameplays en streaming sur YouTube. PewDiePie, Jakesepticye et Markiplier ne sont que quelques-uns des meilleurs joueur...