Piton

Hozzon létre egy JSON-választ a Pythonban

Hozzon létre egy JSON-választ a Pythonban

A JSON (JavaScript Object Notation) fájl nagyon népszerű közeg az adatcseréhez a különböző formátumok között. Ez szöveges formátumú adatokat tartalmaz, amelyeket különféle nyelvek támogatnak, például Python, PHP, PERL stb. A JSON fájl fő célja adatátvitel a szerver és az ügyfél között. A kéréseket a Python generálja az adatok lekérésére egy adott erőforrás URI-ból. Ha a kérés válasza JSON formátumban érkezik vissza, akkor a válasz tartalma lekérdezhető a válasz segítségével.json () függvény. Python szótár objektum használatával adja vissza a választ. Hogy ez a függvény miként használható a JSON válasz elemzésére a Python kérelem könyvtár segítségével, megmutatja ebben az oktatóanyagban.

JSON válasz:

A Python kérelem modulja tartalmazza a JSON dekódolót a JSON adatokkal való együttműködéshez. A válasz.A json () függvény JSON választ ad vissza, ha a JSON dekóder megfelelően működik. A válasz.A json () függvény felveti a kivételt, ha a JSON dekóder meghibásodik, és a JSON válasz nem tartalmaz adatokat vagy érvénytelen adatokat. A válasz visszatérési értéke.raise_for_status () függvény vagy a válasz.Az állapot_kódot ellenőrizni kell a válasz végrehajtása előtt.json () függvény.

A válasz különböző felhasználási módjai.json ():

A válasz három különböző felhasználása.A json () függvény megjelenik az oktatóanyag ezen részében.

1. példa: A válasz egyszerű használata.json ()

A válasz egyszerű felhasználása.A json () függvényt ebben a példában fejtjük ki. A válasz az URI lekérési kérésére, https: // api.github.com / a válasz nevű változóban van tárolva. Ezután ellenőrizzük a válaszváltozó értékét. Ha a válaszváltozó érvénytelen választ tartalmaz, akkor hibaüzenetet nyomtat. Ha a válaszváltozó érvényes választ tartalmaz, amely a válasz állapotkódja és annak tartalma, akkor egy sikeres üzenetet nyomtat.

# Kérések importálása modul
importkérések
# Hozzon létre egy kérést
válasz = kérések.get ('https: // api.github.com / ')
# Ellenőrizze a választ
ha válasz:
# Nyomtassa ki a válasz állapotkódját
print ('A válasz állapotkódja% d'% válasz.állapot_kód)
# Nyomtassa ki a JSON-tartalmat
print ('A JSON-tartalom: \ n% s'% válasz.json ()
# Nyomtassa ki a sikerüzenetet
print ('\ nA kérés kezelése sikeres.')
más:
# Nyomtassa ki az érvénytelen válasz hibaüzenetét
print ('Érvénytelen válasz.')

Kimenet:

A fenti kimenet a fenti parancsfájl végrehajtása után jelenik meg.

2. példa: Válasz használata.json (), kivéve a kezelést

A válasz felhasználásának módja.A json () függvény kivételkezeléssel jelenik meg ebben a példában. A HttpError modult a kérelem modul a szkriptben importálja a kivétel kezelésére. Itt az URI címet a felhasználó veszi el a kérések használatához.get () függvény. Ennek a kérésnek a válasza a válaszváltozóban lesz tárolva. Ezután válasz.A raise_for_status () függvény segítségével ellenőrizhető a kérés válasza, hogy érvényes-e vagy sem. Ha a válasz érvénytelen, akkor egy kivétel jön létre, és a kivétel kivételével minden blokk kódja végrehajtásra kerül. Ha a válasz érvényes, akkor a válaszváltozó tartalmát egy for ciklus segítségével iteráljuk, hogy kinyomtassuk a szótár értékeit minden olyan sorban, amely tartalmazza a válaszadatokat.

# Kérések importálása modul
importkérések
# A HTTPError importálása a kivételkezeléshez
kérésekből.kivételek importálják a HTTPError parancsot
# Definiálja az URI-t
uri = input ('Adjon meg egy érvényes URI-t: \ n')
# Várakozó üzenet nyomtatása
print ('Várakozás a válaszra ... \ n')
próbáld ki:
# Hozzon létre egy lekérési kérelmet a github hírcsatornák tartalmának elolvasására
válasz = kérések.get (uri)
# Emeljen kivételt, ha a válasz sikertelen volt
válasz.raise_for_status ()
# Olvassa el a JSON tartalmat
jsonResponse = válasz.json ()
nyomtatás ("A JSON-tartalom: \ n")
# Olvassa el és nyomtassa ki a kulcs-érték párokat a JSON válaszból
kulcs esetén a jsonResponse érték.elemek ():
nyomtatás (kulcs, ":", érték)
# Nyomtatási hibaüzenet a HTTP hibához
a HTTPError kivételével, mint http_err:
nyomtatás ('HTTP hiba történt:% s'% http_err)
# Nyomtatási hibaüzenet a HTTP hibához
kivéve a téves hibát:
nyomtatás ('Egyéb hiba történt:% s'% tévedés)

Kimenet:

A következő kimenet a parancsfájl végrehajtása után jelenik meg, amikor a felhasználó nem létező URI-értéket ad meg. Itt a HTTPError kivétel jött létre a megfelelő hibaüzenet mellett.


A következő kimenet a parancsfájl végrehajtása után jelenik meg, amikor a felhasználó érvénytelen URI-értéket ad meg. Itt a másik kivétel egy megfelelő hibaüzenettel jött létre.

A következő kimenet a parancsfájl végrehajtása után jelenik meg, amikor a felhasználó érvényes URI-értéket ad meg. Itt a JSON-tartalmat megfelelően kinyomtatták.

3. példa: Válasz használata.json () lekérdezési karakterlánccal

A válasz felhasználásának módja.A json () függvény lekérdezési karaktersorozattal jelenik meg ebben a példában. Itt a kérések.A get () függvény lekérdezési karakterlánc-értéket használt az URI-vel, paraméterek segítségével. Megkeresi a PERL nyelv bejegyzéseit az adott tárakban. Ha a válaszváltozó érvényes választ tartalmaz, akkor a lerakat neve és leírása kinyomtatásra kerül, ellenkező esetben hibaüzenet jelenik meg.

# Kérések importálása modul
importkérések
# Keresés a github adattárában lekérdezési karakterlánc segítségével
válasz = kérések.kap(
'https: // api.github.com / search / repositories ',
params = 'q': 'kérelmek + nyelv: perl',
)
# Ellenőrizze a választ
ha válasz:
# Olvassa el a JSON tartalmat
json_response = válasz.json ()
# Olvassa el az adott lerakat elemet
adattár = json_response ['tételek'] [0]
# Nyomtassa ki az adattár nevét
nyomtatás ('Adattár neve:% s'% tárház ["név"])
# Nyomtassa ki a lerakat leírását
nyomtatás ('Adattár leírása:% s'% tárház ["leírás"])
más:
# Nyomtassa ki az érvénytelen válasz hibaüzenetét
print ('Érvénytelen válasz.')

Kimenet:

A fenti kimenet a fenti parancsfájl végrehajtása után jelenik meg. A PERL nyelv tárolójának nevét és leírását itt nyomtatták ki.

Következtetés:

Különböző módon küldheti el a kérést egy adott URI-nek, és olvassa el a választ a válasz segítségével.A json () függvény ebben az útmutatóban egyszerű példák segítségével került bemutatásra. Remélem, hogy ez az oktatóanyag segít az olvasóknak megérteni a JSON válasz használatát a Pythonban, és megfelelően alkalmazza azt a szkriptjükben, ha szükséges.

Az egér bal oldali gombja nem működik a Windows 10 rendszeren
Ha dedikált egeret használ laptopjával vagy asztali számítógépével, de a az egér bal gombja nem működik a Windows 10/8/7 rendszeren valamilyen oknál f...
A kurzor véletlenszerűen ugrik vagy mozog, miközben gépel a Windows 10-ben
Ha úgy találja, hogy az egér kurzor önállóan, automatikusan, véletlenszerűen ugrik vagy mozog, miközben gépel Windows laptopba vagy számítógépbe, akko...
Az egér és az érintőpadok görgetési irányának megfordítása a Windows 10 rendszerben
Egér és Érintőpads nemcsak a számítást könnyűvé, de hatékonyabbá és kevésbé időigényessé is teszi. Nem tudunk elképzelni egy életet ezek nélkül az esz...