Jak używać danych API JSON w Python

Jak używać danych API JSON w Python

Cel

Spożywaj API JSON w Pythonie.

Rozkłady

Będzie to działać na dowolnym dystrybucji Linux.

Wymagania

Działający instalacja Linux z Python.

Trudność

Łatwy

Konwencje

  • # - Wymaga, aby podane polecenia Linux są wykonywane z uprawnieniami root bezpośrednio jako użytkownik root lub za pomocą sudo Komenda
  • $ - Wymaga, aby podane polecenia Linux zostały wykonane jako zwykły użytkownik niepewny

Wstęp

Jednym z głównych powodów, dla których chcesz współpracować z JSON w Python, jest konsumowanie interfejsów API. Istnieją setki doskonałych publicznych interfejsów API i gotowych do użycia w aplikacji. Nawet ogromni gracze w Internecie, jak Facebook i Twitter, wychodzą z interfejsów API, z którymi możesz pracować.

Możesz budować całe aplikacje wokół danych API, w tym budowanie aplikacji internetowych, które agregują, manipulowane i wyświetlanie tych danych w wygodny sposób.

Skonfiguruj plik

Zanim zaczniesz pracować z interfejsami API, musisz skonfigurować plik Python. Jest to o wiele łatwiejsze niż praca w tłumaczy. Zacznij od importu modułu JSON.

Importuj JSON

Będziesz potrzebował urllib3. Pozwala uzyskać dostęp do adresu URL z Pythonem.

importować urllib3

Otwórz adres URL

Chociaż w Internecie jest mnóstwo wielkich interfejsów API, większość z nich wymaga rejestracji, aby uzyskać klucz API. Ten przewodnik nie jest o tym lub używa określonego interfejsu API. API Opendota zapewnia dostęp do mnóstwa danych dotyczących popularnego MOBA Dota2 bez konieczności rejestracji lub uzyskania klucza. Jeśli nie wiedziałeś, jest dostępny dla Linux. To jest interfejs API, którego użyje ten przewodnik.

Można znaleźć dokumentację dla całego interfejsu API w https: // dokumenty.Opendota.com, Ale ten przewodnik będzie używać https: // API.Opendota.com/API/Heroes Dane bohaterów.

Zacznij od utworzenia PoolManager () obiekt za pomocą urllib3. To obiekt, którego możesz użyć do składania wniosków na stronę internetową.

http = urllib3.PoolManager () 

Zrobić DOSTAWAĆ żądanie za pomocą http obiekt, który właśnie utworzyłeś w API DOTA.

bohaterowie = http.żądanie („get”, „https: // api.Opendota.com/api/bohaterowie)

Paruj JSON

Spróbuj wydrukować bohaterowie zmienna, którą właśnie utworzyłeś.

Drukuj (bohaterowie)

Nie to, czego się spodziewałeś? To wciąż obiekt żądania i ma więcej danych niż potrzebujesz. Spróbuj wydrukować bohaterowie.dane

Drukuj (bohaterowie.dane)

To wygląda bliżej, ale wciąż nie jest tam. Dekoduj dane do UTF-8.

Drukuj (bohaterowie.dane.dekoduj („UTF-8”))

Teraz, jest to JSON. Możesz to przeanalizować za pomocą modułu JSON.

Heroes_dict = Json.Ładuje (bohaterowie.dane.Decode („UTF-8”)) print (Heroes_dict)

Pracuj z danymi

Masz słownik Pythona zawierający wszystkie dane z interfejsu API. Możesz teraz użyć tych danych, jak wybierzesz. Spróbuj nad tym iterować.

For Hero in Heroes: Print (Heroes [„zlokalizowana nazwa_nazwa”])

Twoja pętla wydrukuje nazwę każdego bohatera w Dota2. Z słownika można zobaczyć, że jest ton więcej danych, ale wiesz, jak uzyskać do tego dostęp.

Zamykanie myśli

Droga nie była taka bezpośrednia, ale z pewnością tam dotarła. Jeśli robisz to z klawiszami API, to po prostu zmieni strukturę adresu URL. Wszystko inne powinno pozostać takie samo przez cały czas. Jesteś teraz przygotowany do dostępu do danych API z programów Python.

Ćwiczenia

Wybierz i API z https: // github.com/toddmotto/publiczny, i przekształć go w słownik Pythona. Iternuj nad nim i wydrukuj wartości co najmniej dwóch kluczy.

Powiązane samouczki Linux:

  • Rzeczy do zainstalowania na Ubuntu 20.04
  • Rzeczy do zrobienia po zainstalowaniu Ubuntu 20.04 Focal Fossa Linux
  • Najlepszy odtwarzacz muzyki dla Linux
  • Pobierz Linux
  • Polecenia Linux: Top 20 najważniejsze polecenia, które musisz…
  • Najlepszy Linux Distro dla programistów
  • Jak włączyć ogromne strony w Linux
  • Wprowadzenie do automatyzacji, narzędzi i technik Linuksa
  • Podstawowe polecenia Linux
  • Jak wydrukować drzewo katalogu za pomocą Linux