Programmierung & Skripten

So verwenden Sie JSON -API -Daten in Python

So verwenden Sie JSON -API -Daten in Python

Zielsetzung

Konsumieren Sie eine JSON -API in Python.

Verteilungen

Dies funktioniert bei jeder Linux -Verteilung.

Anforderungen

Eine funktionierende Linux -Installation mit Python.

Schwierigkeit

Einfach

Konventionen

Einführung

Einer der Hauptgründe, warum Sie mit JSON in Python zusammenarbeiten möchten, ist die Konsum von APIs. Es gibt Hunderte von ausgezeichneten öffentlichen APIs und in Ihrer Bewerbung bereit, in Ihrer Bewerbung zu verwenden. Sogar große Spieler im Internet, wie Facebook und Twitter, machen APIs aus, mit denen Sie arbeiten können.

Sie können ganze Anwendungen um API -Daten erstellen, einschließlich des Erstellens von Webanwendungen, die diese Daten aggregiert, manipulieren und anstellen.

Richten Sie eine Datei ein

Bevor Sie mit APIs arbeiten, müssen Sie eine Python -Datei einrichten. Es ist viel einfacher als im Dolmetscher zu arbeiten. Beginnen Sie mit dem Importieren des JSON -Moduls.

JSON importieren

Du brauchst urllib3. Sie können mit Python auf eine URL zugreifen.

Urllib3 importieren

Öffnen Sie die URL

Während es im Internet eine Menge großartiger APIs gibt, müssen die meisten von ihnen anmelden, um eine API -Schlüssel zu erhalten. In diesem Handbuch geht es nicht darum oder verwendet eine bestimmte API. Die Opendota -API bietet Zugriff auf eine Menge Daten, die sich auf den beliebten MOBA DOTA2 beziehen, ohne sich anzumelden oder einen Schlüssel zu erhalten. Falls Sie es nicht wussten, ist es für Linux verfügbar. Das ist die API, die dieser Leitfaden verwenden wird.

Sie finden die Dokumentation für die gesamte API bei https: // docs.Opendota.com, Aber diese Anleitung wird die verwenden https: // api.Opendota.com/api/helden Heroes -Daten.

Beginnen Sie mit dem Erstellen von a Poolmanager () Objekt verwendet urllib3. Es ist das Objekt, mit dem Sie Anfragen an einer Website stellen können.

http = urllib3.Poolmanager () 

Mach ein ERHALTEN Anfrage mit der http Objekt, das Sie gerade für die Dota -API erstellt haben.

Heroes = http.Anfrage ('get', 'https: // api.Opendota.com/api/helden ')

Analysieren den JSON

Versuchen Sie, das auszudrucken Helden Variable, die Sie gerade erstellt haben.

Druck (Helden)

Nicht das, was Sie erwartet haben? Es ist immer noch ein Anforderungsobjekt und es hat mehr Daten als Sie benötigen. Versuchen Sie auszudrucken Helden.Daten

Druck (Helden.Daten)

Das sieht genauer aus, aber es ist immer noch nicht ganz da. Dekodieren Sie die Daten in UTF-8.

Druck (Helden.Daten.decode ('utf-8'))

Jetzt, das ist JSON. Sie können das mit dem JSON -Modul analysieren.

Heroes_Dict = JSON.Ladungen (Helden.Daten.Decodes ('utf-8')) print (Heroes_Dict)

Arbeiten Sie mit den Daten

Sie haben ein Python -Wörterbuch, das alle Daten der API enthält. Sie können diese Daten jetzt verwenden, wie Sie auswählen. Versuchen Sie es mit dem Iterieren darüber.

Für Held in Heroes: Print (Heroes ['localized_name'])

Ihre Schleife wird den Namen eines jeden Helden in Dota2 ausdrucken. Sie können aus dem Wörterbuch sehen, dass es die weiteren Daten von Ton gibt, aber Sie wissen, wie Sie darauf zugreifen können.

Gedanken schließen

Die Straße dort war nicht so direkt, aber es kam sicherlich dort an. Wenn Sie dies mit API -Tasten tun, ändert es nur die URL -Struktur. Alles andere sollte überall gleich bleiben. Sie sind jetzt ausgestattet, um von Ihren Python -Programmen von API -Daten zugreifen zu können.

Übung

Pflücken und api von https: // github.com/toddmotto/public-apis, und verwandeln es in ein Python -Wörterbuch. Iterieren Sie darüber und drucken Sie die Werte von mindestens zwei Schlüssel aus.

CHMOD-SCHANUAL-Seite
Name CHMOD - Ändern Sie die Dateimodus -Bits Synopsis chmod [Option]… Modus [, Modus]… Datei… CHMOD [Option]… Octal -Mode -Datei… CHMOD [Option]…......
CKSUM- SCHANUAL
Name CKSUM - Prüfsumme und zählen Sie die Bytes in einer Datei Synopsis CKSUM [Datei]… CKSUM [Option] Beschreibung Drucken Sie CRC -Kontrollsumme und ...
DU- SCHANDE PAGE
Name DU -Abschätzung der Dateispace -Nutzung Synopsis du [Option]… [Datei]… du [Option]… -Files0 -FROM = F Beschreibung Fassen Sie die Festplattennutz...