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.
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.
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
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}")
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
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".
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")
Here is a fact related to cats: Mountain lions are strong jumpers, thanks to muscular hind legs that are longer than their front legs.
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"]
Ini ialah hierarki yang diikuti semasa mengekstrak nilai yang betul.
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!