Python

Erstellen Sie eine JSON-Antwort in Python

Erstellen Sie eine JSON-Antwort in Python

JSON (JavaScript Object Notation)-Datei ist ein sehr beliebtes Medium zum Austausch von Daten zwischen verschiedenen Formaten. Es enthält Daten im Textformat, das von verschiedenen Sprachen wie Python, PHP, PERL usw. unterstützt wird. Der Hauptzweck der JSON-Datei besteht darin, Daten zwischen dem Server und dem Client zu übertragen. Die Anfragen werden von Python generiert, um die Daten von einem bestimmten Ressourcen-URI abzurufen. Wenn die Antwort der Anfrage im JSON-Format zurückgegeben wird, kann der Inhalt der Antwort mit der Antwort abgerufen werden.json()-Funktion. Es gibt die Antwort mithilfe eines Python-Wörterbuchobjekts zurück. Wie diese Funktion verwendet werden kann, um JSON-Antworten mithilfe der Python-Anforderungsbibliothek zu analysieren, wird in diesem Tutorial gezeigt.

JSON-Antwort:

Das Request-Modul von Python enthält den JSON-Decoder, um mit den JSON-Daten zu arbeiten. Die Antwort.json()-Funktion gibt eine JSON-Antwort zurück, wenn der JSON-Decoder ordnungsgemäß funktioniert. Die Antwort.json()-Funktion löst die Ausnahme aus, wenn der JSON-Decoder fehlschlägt und die JSON-Antwort keine Daten oder ungültige Daten enthält. Der Rückgabewert der Antwort.raise_for_status()-Funktion oder die Antwort.status_code muss vor der Ausführung der Antwort überprüft werden.json()-Funktion.

Verschiedene Verwendungen von Antworten.json():

Drei verschiedene Verwendungen der Antwort.Die Funktion json() wird in diesem Teil des Tutorials gezeigt.

Beispiel-1: Einfache Verwendung von Response.json()

Die einfache Verwendung der Antwort.Die Funktion json() wird in diesem Beispiel erläutert. Die Antwort auf die Get-Anfrage des URI, https://api.github.com/ wird in einer Variablen namens response gespeichert. Als nächstes wird der Wert der Antwortvariablen überprüft. Wenn die Antwortvariable eine ungültige Antwort enthält, wird eine Fehlermeldung ausgegeben. Wenn die Antwortvariable eine gültige Antwort enthält, die den Statuscode der Antwort und ihren Inhalt darstellt, wird eine Erfolgsmeldung gedruckt.

# Modul für Importanfragen
Importanfragen
# Get-Anfrage erstellen
Antwort = Anfragen.get('https://api.github.com/')
# Überprüfen Sie die Antwort
wenn antwort:
# Drucken Sie den Antwortstatuscode aus
print('Der Statuscode der Antwort ist %d' %response.Statuscode)
# Drucken Sie den JSON-Inhalt
print('Der JSON-Inhalt ist: \n%s' %response.json())
# Drucken Sie die Erfolgsmeldung
print('\nDie Anfrage wurde erfolgreich bearbeitet.')
sonst:
# Drucken Sie die Fehlermeldung für die ungültige Antwort
print('Ungültige Antwort.')

Ausgabe:

Die folgende Ausgabe wird erscheinen, nachdem das obige Skript ausgeführt wurde.

Beispiel-2: Verwendung der Antwort.json() mit Ausnahmebehandlung

Die Verwendung der Antwort.Die Funktion json() mit Ausnahmebehandlung wird in diesem Beispiel gezeigt. Das HttpError-Modul wird mit dem Request-Modul im Skript importiert, um die Ausnahme zu behandeln. Hier wird dem Benutzer die URI-Adresse entnommen, um die Anfragen zu verwenden.get()-Funktion. Die Antwort auf diese Anfrage wird in der Antwortvariablen gespeichert. Als nächstes Antwort.Die Funktion raise_for_status() wird verwendet, um die Antwort der Anfrage zu überprüfen, ob sie gültig oder ungültig ist. Wenn die Antwort ungültig ist, wird eine Ausnahme generiert und der Code eines Ausnahmeblocks wird basierend auf der Ausnahme ausgeführt. Wenn die Antwort gültig ist, wird der Inhalt der Antwortvariablen mit einer for-Schleife wiederholt, um die Werte des Wörterbuchs in jeder Zeile auszugeben, die die Antwortdaten enthält.

# Modul für Importanfragen
Importanfragen
# HTTPError für die Ausnahmebehandlung importieren
von Anfragen.Ausnahmen importieren HTTPError
# Definieren Sie die URI
uri = input('Geben Sie eine gültige URI ein:\n')
# Wartenachricht drucken
print('Warten auf die Antwort…\n')
Versuchen:
# Erstellen Sie eine Get-Anfrage zum Lesen des Feed-Inhalts von github
Antwort = Anfragen.bekommen (uri)
# Ausnahme auslösen, wenn die Antwort nicht erfolgreich war
Antwort.raise_for_status()
# Lesen Sie den JSON-Inhalt
jsonResponse = Antwort.json()
print("Der JSON-Inhalt ist: \n")
# Lesen und drucken Sie jedes Schlüssel-Wert-Paar aus der JSON-Antwort
für Schlüssel, Wert in jsonResponse.Artikel():
print(Schlüssel, ":", Wert)
# Fehlermeldung für den HTTP-Fehler drucken
außer HTTPError als http_err:
print('HTTP-Fehler ist aufgetreten: %s' %http_err)
# Fehlermeldung für den HTTP-Fehler drucken
außer Ausnahme als Fehler:
print('Anderer Fehler ist aufgetreten: %s' %err)

Ausgabe:

Die folgende Ausgabe wird nach der Ausführung des Skripts angezeigt, wenn ein nicht vorhandener URI-Wert vom Benutzer bereitgestellt wird. Hier wurde die HTTPError-Ausnahme neben der entsprechenden Fehlermeldung generiert.


Die folgende Ausgabe wird nach der Ausführung des Skripts angezeigt, wenn ein ungültiger URI-Wert vom Benutzer bereitgestellt wird. Hier wurde die andere Ausnahme mit einer entsprechenden Fehlermeldung generiert.

Die folgende Ausgabe erscheint nach der Ausführung des Skripts, wenn ein gültiger URI-Wert vom Benutzer bereitgestellt wird. Hier wurde der JSON-Inhalt richtig gedruckt.

Beispiel-3: Verwendung der Antwort.json() mit Abfragestring

Die Verwendung der Antwort.json() Funktion mit Abfragestring wird in diesem Beispiel gezeigt. Hier die Anfragen.Die Funktion get() verwendet einen Abfragezeichenfolgenwert mit dem URI unter Verwendung von Parametern. Es durchsucht die Einträge für die PERL-Sprache in den angegebenen Repositories. Wenn die Antwortvariable eine gültige Antwort enthält, werden der Repository-Name und die Beschreibung gedruckt, andernfalls wird eine Fehlermeldung ausgegeben.

# Modul für Importanfragen
Importanfragen
# Suche im Repository von github mit der Abfragezeichenfolge
Antwort = Anfragen.erhalten(
'https://api.github.com/search/repositories',
params='q': 'requests+language:perl',
)
# Überprüfen Sie die Antwort
wenn antwort:
# Lesen Sie den JSON-Inhalt
json_response = Antwort.json()
# Lesen Sie das jeweilige Repository-Element
Repository = json_response['items'][0]
# Repository-Namen drucken
print('Repository-Name: %s' %Repository["Name"])
# Drucken Sie die Repository-Beschreibung
print('Repository-Beschreibung: %s' %Repository["Beschreibung"])
sonst:
# Drucken Sie die Fehlermeldung für die ungültige Antwort
print('Ungültige Antwort.')

Ausgabe:

Die folgende Ausgabe wird erscheinen, nachdem das obige Skript ausgeführt wurde. Der Repository-Name und die Beschreibung für die PERL-Sprache wurden hier gedruckt.

Fazit:

Verschiedene Möglichkeiten, die Anfrage an eine bestimmte URI zu senden und die Antwort mithilfe der Antwort zu lesen.Die Funktion json() wurde in diesem Tutorial anhand einfacher Beispiele gezeigt shown. Ich hoffe, dieses Tutorial wird den Lesern helfen, die Verwendung der JSON-Antwort in Python zu verstehen und sie bei Bedarf richtig in ihrem Skript anzuwenden.

Steuern und verwalten Sie Mausbewegungen zwischen mehreren Monitoren in Windows 10
Dual-Display-Maus-Manager lässt Sie die Mausbewegung zwischen mehreren Monitoren steuern und konfigurieren, indem Sie ihre Bewegungen in der Nähe der ...
Mit WinMouse können Sie die Mauszeigerbewegung auf einem Windows-PC anpassen und verbessern improve
Wenn Sie die Standardfunktionen Ihres Mauszeigers verbessern möchten, verwenden Sie Freeware WinMouse. Es fügt weitere Funktionen hinzu, damit Sie das...
Linker Mausklick funktioniert nicht unter Windows 10
Wenn Sie eine dedizierte Maus mit Ihrem Laptop oder Desktop-Computer verwenden, aber die linker Mausklick funktioniert nicht unter Windows 10/8/7 aus ...