JsonPath i Python

JsonPath i Python
Før vi begynner å lære å bruke JSONPath i Python, la oss kort introdusere JsonPath. JsonPath er et uttrykksspråk. Det brukes til å analysere en JSON -streng eller konstruere et JavaScript -objekt beskrevet av strengen i Python. Funksjonaliteten til JsonPath i Python ligner på XPath i XML. XPath brukes til å analysere dataene i XML; Tilsvarende brukes JsonPath til å analysere dataene i Python. Tanken er å bruke en effektiv måte å analysere JSON -dataene uten å laste inn hele JSON -dataene eller gå gjennom hele JSON -dataene i Python og få ønsket resultat. JSONPath er en minneoptimalisert tilnærming sammenlignet med alle andre JSON-spørringer. Det gir også en måte å analysere JSON -data i Python med noen få kodelinjer. JsonPath har forskjellige biblioteker. I denne artikkelen vil vi lære om JSONPath -bibliotekene og hvordan du bruker bibliotekene ved hjelp av eksempler. Så la oss begynne læringsprosessen.

JSONPath -biblioteker

Selv om det er mange JSONPath-biblioteker, er de mest populære JSONPath-RW, JSONPath-RW-EXT og JSONPATH-NG. JSONPath er Port of the Perl, og det er JS -versjonen av JSONPath. JSONPath-RW er en fullstendig implementering av JSONPath-biblioteket. Uttrykkene i JSONPath-RW er førsteklasses objekter da de gir språkutvidelse. Disse uttrykkene er enkle å transformere, utvide, analysere og analysere.

Det gir også noen ekstra utvidelser som utvider funksjonaliteten til JSONPath. JSONPATH-RW-EXT utvider mulighetene til JSONPath-RW mens du legger til flere utvidelser, i.e., filter, aritmetikk, len osv. JSONPath-NG-biblioteket er skrevet på Native Python Language og den endelige implementeringen av JSONPath. Den støtter begge versjonene av Python; Python 2 og Python 3. Det er beregnet på standardklager som inkluderer både binære og aritmetiske sammenligningsoperatører definert i den opprinnelige JSONPath.

Installere JSONPath -biblioteker

JSONPATH-RW, JSONPATH-RW-EXT- og JSONPATH-NG-bibliotekene kan ganske enkelt installeres ved hjelp av PIP-installasjonskommandoen. Nedenfor er en trinn-for-trinns guide til å installere JSONPath-bibliotekene, og du kan lære hvordan du bruker disse bibliotekene ved hjelp av eksempler.

Eksempel 1:

Vårt første eksempel handler om JSONPath-RW-biblioteket. JSONPath-RW-biblioteket tilbyr betydelig betydelig og robust utvidet implementering av JSONPath i Python. Det er godt tilpasset med Python 2 og Python 3-versjoner av Python og deres utvidelser, i.e., Python 2.7, Python 3.4, Python 3.5, Python 3.6, Python 3.7, og pypy pypy3. For å installere JSONPath-RW, bruk den listede kommandoen.

!PIP-install JSONPath-RW

Når du utfører PIP-installasjonskommandoen, vil følgende utdata indikere vellykket installasjon av JSONPath-RW.

Når biblioteket er installert, kan du bruke det til å analysere JSON -data i Python for å gi et ønsket resultat. Se følgende eksempel på JSONPath-RW for din forståelse:

Importer JSON
Fra jsonpath_rw import jsonpath, analyser
Students_data = '"srno": 1, "stu_name": "robbin", "far_name": "royel"'
Jsondata = json.Loads (Students_data)
Json_path_expr = parse ('$.Stu_name ')
Stu_name = json_path_expr.Finn (Jsondata)
Print ("Navnet på studenten er:", Stu_name [0].verdi)

Følgende utgang du får etter å ha brukt JSONPath-RW-biblioteket.

Eksempel 2:

Nå skal vi diskutere JSONPath-RW-EXT-biblioteket. For å installere JSONPath-RW-EXT-biblioteket, brukes den samme PIP-installasjonskommandoen, ta en titt:

!PIP-install JSONPath-RW-EXT

Etter vellykket installasjon av JSONPath-RW-EXT-biblioteket, får du følgende utdata:

La oss se et eksempel på JSONPath-RW-EXT for å lære hvordan det vil bidra til å analysere JSON-dataene i Python.

Importer jsonpath_rw_ext som JPext
trykk (JPext.Match ('$.que [*] ', ' que ': [' tex ',' bar '],' neste ':' quetex '))

Når du utfører koden ovenfor i en hvilken som helst Python -tolk, får du følgende utdata:

Eksempel 3:

Vårt siste eksempel handler om JSONPath NG -biblioteket. Igjen, for å installere JSONPath NG -biblioteket, må du bruke den listede kommandoen.

!PIP-install JSONPath-ng

Etter å ha installert JSONPath-NG-biblioteket, får du se følgende utdata.

For å oppgradere JSONPath-NG-biblioteket, må du bruke den listede kommandoen. Her er syntaksen til -oppgrader Python -kommandoen.

!Pip Install-Upgrade JsonPath-ng

Kommandoen gitt ovenfor vil installere den nyeste versjonen av JSONPath-NG-biblioteket. Imidlertid, hvis systemet ditt allerede har installert den nyeste versjonen, får du følgende utdata:

Her er et enkelt eksempel på JSONPath-NG-biblioteket for å hjelpe deg å lære å analysere JSON-data i Python ved hjelp av JSONPath-NG-biblioteket og få ønsket resultat.

Importer JSON
Fra JSONPath_NG Import JsonPath, analyser
BookSdata = '"kategori": "Fiction", "Forfatter": "Herman Melville", "Title": "Sayings of the Century"'
Data = json.Loads (BooksData)
Parsedata = parse ('$.Kategori')
Kategori = Parsedata.Finn (data)
Parsedata1 = parse ('$.Forfatter')
Forfatter = Parsedata1.Finn (data)
Parsedata2 = parse ('$.Tittel')
Tittel = Parsedata2.Finn (data)
trykk ("Kategorien til boka er:", kategori [0].verdi)
Trykk ("Forfatteren av boken er:", forfatter [0].verdi)
trykk ("Navnet på boka er:", tittel [0].verdi)

Utfør koden gitt ovenfor i en hvilken som helst Python -tolk, så får du den påfølgende produksjonen.

Konklusjon

I denne redaksjonen har vi lært om JSONPath i Python. La oss ha en rask oversikt over artikkelen. JSONPath i Python gir en enkel, enkel og rask måte å analysere JSON -dataene i Python for å få ønsket resultat uten å gå gjennom hele JSON -dataene i Python. Det hjelper til med å trekke ut den spesifikke verdien fra en enorm mengde data mens du sparer tid og minne. Det kommer godt med når vi bare er interessert i noen spesifikke verdier i en enorm mengde data. Vi har sett tre JSONPath-biblioteker, JSONPath-RW, JSONPath-RW-Ext og JSONPath-NG-biblioteker, og med hjelp av eksempler har vi lært hvordan vi skal installere og bruke disse bibliotekene til å analysere JSON-dataene i Python. Disse bibliotekene er Python Builtin JsonPath -biblioteker som kommer i Python -pakken.