Rumah > pembangunan bahagian belakang > Tutorial Python > Program Python untuk mengekstrak nilai tunggal daripada respons JSON

Program Python untuk mengekstrak nilai tunggal daripada respons JSON

PHPz
Lepaskan: 2023-09-03 10:49:06
ke hadapan
1509 orang telah melayarinya

Program Python untuk mengekstrak nilai tunggal daripada respons JSON

Pengekstrakan nilai ialah konsep pengaturcaraan yang sangat popular yang digunakan dalam pelbagai jenis operasi. Walau bagaimanapun, mengekstrak nilai daripada respons JSON ialah konsep yang berbeza. Ia membantu kami membina logik dan mencari nilai tertentu dalam set data yang kompleks. Artikel ini akan menerangkan pelbagai kaedah yang boleh digunakan untuk mengekstrak satu nilai daripada respons JSON . Sebelum kita memulakan pengekstrakan nilai, mari fokus pada maksud respons JSON.

Apakah respons JSON?

JSON (JavaScript Object Notation) respons ialah format data yang diterima secara meluas melalui mana pelayan bertindak balas kepada permintaan pelanggan . Apabila pelanggan meminta beberapa API atau maklumat daripada pelayan, respons dijana dan API dihantar kepada pelanggan. Kini, maklumat ini dikongsi dengan cara kedua-dua pelanggan dan pelayan boleh memahami data, dan untuk ini kami memerlukan format data bersatu.

JSON respons berkongsi maklumat dalam bentuk JSON objek yang boleh ditukar kepada mana-mana bahasa pengaturcaraan asli. Memandangkan kami menggunakan python dan tugas kami adalah untuk mendapatkan satu nilai daripada respons ini, kami menukar objek ini ke dalam kamus. Memandangkan kita mempunyai pengetahuan ringkas tentang respons JSON, mari kita fahami bahagian pengekstrakan.

Ekstrak nilai dari respons JSON menggunakan API

Dalam kaedah ini kami akan mendapatkan semula data daripada pelayan menggunakan titik akhir API. Mula-mula, kami akan mengimport pustaka "requests" untuk mengendalikan permintaan HTTP. Kami kemudiannya akan menghantar permintaan "GET" ke titik akhir API menggunakan kaedah "get()". Dalam contoh ini, kami akan menggunakan titik akhir API "CoinDesk" untuk mendapatkan Indeks Harga Bitcoin (BPI) dalam masa nyata. Objek JSON ditukar menjadi kamus dengan bantuan kaedah "json()". Kamus ini kemudiannya dihuraikan untuk memilih maklumat tertentu.

Di sini kita akan mengekstrak nilai BPI dengan mengakses objek bersarang. Kunci kamus merujuk kepada atribut dan sifat tertentu, dan nilainya merujuk kepada jenis data yang berbeza. Kami akan menggunakan kunci untuk mengekstrak nilai tunggal dan berbilang. Sila rujuk pautan ini untuk dokumentasi rasmi - https://apipheny.io/free-api/

Pautan URL API - https://api.coindesk.com/v1/bpi/currentprice.json

Contoh

Berikut ialah contoh mengekstrak nilai tunggal daripada respons JSON menggunakan API "CoinDesk" -

import requests

print("Welcome to the live bitcoin Price index")
Json_data = requests.get('https://api.coindesk.com/v1/bpi/currentprice.json').json()

Disclaimer = Json_data["disclaimer"]
print(Disclaimer)

BPI = Json_data["bpi"]["USD"]["rate"]
print(f"The real time BPI value for the United states of America is: {BPI}")

TIME = Json_data["time"]["updated"]
print(f"The index was viewed at Universal time: {TIME}")
Salin selepas log masuk

Output

Welcome to the live bitcoin Price index
This data was produced from the CoinDesk Bitcoin Price Index (USD). Non-USD currency data converted using hourly conversion rate from openexchangerates.org
The real time BPI value for the United states of America is: 25,978.6344
The index was viewed at Universal time: Jun 11, 2023 18:26:00 UTC
Salin selepas log masuk

Ekstrak satu nilai daripada fail JSON setempat

Kaedah ini memfokuskan pada mengekstrak nilai tunggal daripada fail JSON yang disimpan pada sistem. Kami mula-mula akan mencipta fail JSON dan kemudian mengimport modul JSON untuk menyahkod data yang diambil daripada "JASON Response ".

Kaedah ini serupa dengan konsep pemprosesan fail, kami memuatkan fail JSON dan kemudian membukanya dalam mod tertentu. Kami juga boleh menukar fail ini dan memanipulasi kandungannya dengan bantuan mod fail yang berbeza seperti Append, Binary, Read Only, dsb. Kami akan menggunakan fail setempat (DSC.json) untuk menyimpan maklumat yang berkaitan dengan kucing dan kami akan mengekstrak maklumat ini daripada kunci bernama "fakta".

Contoh

Berikut adalah contoh -

import json

try:
   with open("DSC.json", "r+") as file:
      Json_file = json.load(file)
   FACTS = Json_file["fact"]
   print(f"Here is a fact related to cats: \n{FACTS}")

except:
   print("File does not exist")
Salin selepas log masuk

Output

Here is a fact related to cats: 
Mountain lions are strong jumpers, thanks to muscular hind legs that are longer than their front legs.
Salin selepas log masuk

Pemahaman lain

Kami juga boleh menukar data JSON kepada rentetan dan bukannya kamus dengan membuang "JSON Object " ke dalam elemen dan kemudian menukarnya dengan bantuan ".JSON " yang dimuatkan ke dalam rentetan. load()". Kesilapan yang paling biasa dilakukan pengaturcara semasa menggunakan konsep pengekstrakan nilai ialah mereka menggunakan nama kunci yang salah untuk mengakses nilai. Selain itu, apabila berurusan dengan objek bersarang , kita mesti menggunakan susunan yang betul untuk mengekstrak data Berikut adalah contoh –

.
data = Json_data["Parent object"]["Child object"]
Salin selepas log masuk

Ini ialah hierarki yang diikuti semasa mengekstrak nilai yang betul.

KESIMPULAN

Dalam artikel ini, kami memperkenalkan asas pengekstrakan nilai dan memahami kepentingannya. Kami juga membincangkan mekanik "JSON response " dan cara mengekstrak satu nilai daripadanya. Dalam kaedah pertama, kami mendapatkan semula data daripada pelayan menggunakan titik akhir API. Dalam pendekatan nd kedua, kami mengekstrak nilai terus daripada fail JSON yang disimpan secara tempatan.

Atas ialah kandungan terperinci Program Python untuk mengekstrak nilai tunggal daripada respons JSON. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan