JSONPath в Python

каталога в Python Программирование и разработка

Прежде чем мы начнем изучать, как использовать JSONPath в Python, давайте кратко представим JSONPath. JSONPath — это язык выражений. Он используется для анализа строки JSON или создания объекта JavaScript, описываемого строкой в ​​Python. Функциональность JSONPath в Python аналогична XPath в XML. XPath используется для анализа данных в XML; аналогично JSONPath используется для анализа данных в Python. Идея состоит в том, чтобы использовать эффективный способ анализа данных JSON без загрузки всех данных JSON или просмотра всех данных JSON в Python и получения желаемого результата. JSONPath — это подход, оптимизированный для памяти, по сравнению с любым другим запросом JSON. Он также предоставляет способ анализа данных JSON в Python с помощью нескольких строк кода. JSONPath имеет различные библиотеки. В этой статье, мы узнаем о библиотеках JSONPath и о том, как использовать эти библиотеки с помощью примеров. Итак, приступим к процессу обучения.

Библиотеки JSONPath

Хотя существует множество библиотек JSONPath, наиболее популярными из них являются jsonpath-rw, jsonpath-rw-ext и jsonpath-ng. jsonpath — это порт Perl и JS-версия JSONPath. jsonpath-rw — это полная реализация библиотеки JSONPath. Выражения в jsonpath-rw являются первоклассными объектами, поскольку они обеспечивают расширение языка. Эти выражения легко преобразовывать, расширять, анализировать и анализировать.

Он также предоставляет некоторые дополнительные расширения, расширяющие функциональные возможности JSONPath. jsonpath-rw-ext расширяет возможности jsonpath-rw, добавляя несколько расширений, т. е. фильтр, арифметику, len и т. д. библиотека jsonpath-ng написана на родном языке python и является окончательной реализацией JSONPath. Он поддерживает обе версии Python; python 2 и python 3. Он предназначен для стандартных жалоб, которые включают как бинарные, так и арифметические операторы сравнения, определенные в исходном JSONPath.

Установка библиотек JSONPath

Библиотеки jsonpath-rw, jsonpath-rw-ext и jsonpath-ng можно просто установить с помощью команды pip install. Ниже приведено пошаговое руководство по установке библиотек JSONPath, и вы можете научиться использовать эти библиотеки с помощью примеров.

Читайте также:  Что такое язык XML

Пример 1

Наш первый пример касается библиотеки jsonpath-rw. Библиотека jsonpath-rw предлагает значительную и надежную расширенную реализацию JSONPath в Python. Он хорошо сочетается с версиями Python 2 и Python 3 и их расширениями, т. е. python 2.7, python 3.4, python 3.5, python 3.6, python 3.7 и pypy pypy3. Чтобы установить jsonpath-rw, используйте указанную команду.

Наш первый пример касается библиотеки jsonpath

Когда вы выполняете команду pip install, следующий вывод укажет на успешную установку jsonpath-rw.

Когда вы выполняете команду pip instal

После установки библиотеки вы можете использовать ее для анализа данных JSON в Python для получения любого желаемого результата. См. следующий пример jsonpath-rw для вашего понимания:

import json
from jsonpath_rw import jsonpath, parse

Students_data = ‘{«SrNo»:1, «Stu_Name»:»Robbin» , «Father_name»:»Royel»}’
JsonData = json.loads(Students_data)

Json_Path_Expr= parse(‘$.Stu_Name’)
Stu_Name = Json_Path_Expr.find(JsonData)

print(«The Name of the student is: «, Stu_Name[0].value)

Следующий вывод вы получите после использования библиотеки jsonpath-rw.

Следующий вывод вы получите после использования библиотеки jsonpath

Пример 2

Теперь мы будем обсуждать библиотеку jsonpath-rw-ext. Для установки библиотеки jsonpath-rw-ext используется та же самая команда pip install, посмотрите:

Для установки библиотеки jsonpath-rw-ext используется та же

После успешной установки библиотеки jsonpath-rw-ext вы получите следующий вывод:

После успешной установки библиотеки jsonpath-rw-ext вы 

Давайте посмотрим на пример jsonpath-rw-ext, чтобы узнать, как он поможет анализировать данные JSON в python.

import jsonpath_rw_ext as jpExt

print (jpExt.match(‘$.que[*]’, {‘que’[‘tex’, ‘bar’], ‘next’‘quetex’}))

Когда вы выполните приведенный выше код в любом интерпретаторе Python, вы получите следующий вывод:

Когда вы выполните приведенный выше код в любом интерпретаторе

Пример 3

Наш последний пример касается библиотеки JSONPath NG. Опять же, чтобы установить библиотеку JSONPath NG, вам нужно использовать указанную команду.

Наш последний пример касается библиотеки JSONPath NG

После успешной установки библиотеки jsonpath-ng вы увидите следующий вывод.

После успешной установки библиотеки jsonpath-ng

Чтобы обновить библиотеку jsonpath-ng, вам нужно использовать указанную команду. Вот синтаксис команды —upgrade python.

Чтобы обновить библиотеку jsonpath-ng, вам нужно использовать

Приведенная выше команда установит последнюю версию библиотеки jsonpath-ng. Однако, если в вашей системе уже установлена ​​последняя версия, вы получите следующий вывод:

Приведенная выше команда установит последнюю версию библиотеки jsonpath

Вот простой пример библиотеки jsonpath-ng, который поможет вам научиться анализировать данные JSON в Python с помощью библиотеки JSONPath-ng и получить желаемый результат.

import json
from jsonpath_ng import jsonpath, parse

booksData = ‘{«Category»:»Fiction», «Author»:»Herman Melville» , «Title»:»Sayings of the Century»}’
Data = json.loads(booksData)
ParseData= parse(‘$.Category’)
Category = ParseData.find(Data)
ParseData1= parse(‘$.Author’)
Author = ParseData1.find(Data)
ParseData2= parse(‘$.Title’)
Title = ParseData2.find(Data)

print(«The Category of the book is: «, Category[0].value)
print(«The Author of the book is: «, Author[0].value)
print(«The Name of the book is: «, Title[0].value)

Выполните приведенный выше код в любом интерпретаторе Python, и вы получите следующий вывод.

Выполните приведенный выше код в любом интерпретаторе Python

Вывод

В этой редакционной статье мы узнали о JSONPath в Python. Давайте кратко повторим статью. JSONPath в Python предоставляет простой, легкий и быстрый способ анализа данных JSON в Python для получения желаемого результата без просмотра всех данных JSON в Python. Это помогает извлечь конкретное значение из огромного количества данных, экономя время и память. Это удобно, когда нас интересуют только некоторые конкретные значения в огромном количестве данных. Мы рассмотрели три библиотеки JSONPath, библиотеки jsonpath-rw, jsonpath-rw-ext и jsonpath-ng, и с помощью примеров узнали, как устанавливать и использовать эти библиотеки для анализа данных JSON в Python. Эти библиотеки являются встроенными библиотеками JSONPath, которые входят в пакет python.

Оцените статью
bestprogrammer.ru
Добавить комментарий