$npx skillfedfor your agent

jsonpath-ng

A final implementation of JSONPath for Python that aims to be standard compliant, including arithmetic and binary comparison operators and providing clear AST for metaprogramming.

Worth itPyPI Released Feb 202672.9M downloads / moApache 2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — jsonpath_ng-1.8.0-py3-none-any.whl
v1.8.0 · released 2026-02-24

Yes. jsonpath-ng is a mature, actively maintained library (Production/Stable status, 735 stars) with zero known vulnerabilities, no runtime dependencies, and permissive licensing. It fills a genuine need for standards-compliant JSONPath parsing with AST manipulation capabilities. Install it if you need to query or modify JSON structures programmatically beyond simple key access.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Low friction: pure Python wheel with no runtime dependencies.
  • Actively maintained as of 2026-02-24 with 735 repository stars and recent commits.

License · maintenance · safety

Apache 2.0 (permissive) — Apache 2.0 permissive license allows commercial and private use with minimal restrictions.

last release 2026-02-24 (171 days) · last repo commit 2026-08-01 · 735 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 72,852,742 downloads/mo, #457 on PyPI

Verify before relying

pip install jsonpath-ng

from jsonpath_ng import parse

jsonpath_expr = parse('foo[*].baz')
matches = jsonpath_expr.find({'foo': [{'baz': 1}, {'baz': 2}]})
print([match.value for match in matches])
  • Whether the package supports Python versions below 3.10 despite classifiers listing 3.10+ support
  • Performance characteristics on large JSON documents or deeply nested structures
Same gist for agents: .md · .json

What it is and what it does

jsonpath-ng is a full JSONPath language implementation for Python that goes beyond simple regex-based extraction. It parses JSONPath expressions into first-class AST objects, allowing you to query, analyze, and transform JSON data programmatically. The library supports standard JSONPath syntax plus extensions like arithmetic operators, binary comparisons, and named operators such as `parent`. It merges functionality from jsonpath-rw and jsonpath-rw-ext, adding the ability to not just extract values but also update or remove nodes in the tree.

The package is designed for developers who need robust, standards-compliant JSON querying with full path tracking and metadata. Each match remembers its location in the source document, enabling automatic ID generation and parent traversal. You can build expressions either by parsing strings or by constructing them programmatically using classes like Fields, Slice, and Index, making it suitable for both interactive use and metaprogramming scenarios.

Use it for

  • Extract nested values from API responses or configuration files using JSONPath syntax like `foo[*].baz`
  • Batch update or remove fields across a JSON structure matching a specific path pattern
  • Build dynamic JSON query tools where expressions are analyzed, transformed, or extended at runtime
  • Generate automatic unique identifiers for JSON elements that lack explicit IDs using path-based fallbacks
  • Validate or filter JSON documents by selecting nodes matching complex criteria with where clauses

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

jsonpath-ng is a mature, actively maintained library (Production/Stable status, 735 stars) with zero known vulnerabilities, no runtime dependencies, and permissive licensing. It fills a genuine need for standards-compliant JSONPath parsing with AST manipulation capabilities. Install it if you need to query or modify JSON structures programmatically beyond simple key access.

Install

jsonpath-ng on PyPI

Before you install

Low friction: pure Python wheel with no runtime dependencies. Actively maintained as of 2026-02-24 with 735 repository stars and recent commits.

License in practice

Apache 2.0 permissive license allows commercial and private use with minimal restrictions.

Quickstart

pip install jsonpath-ng

from jsonpath_ng import parse

jsonpath_expr = parse('foo[*].baz')
matches = jsonpath_expr.find({'foo': [{'baz': 1}, {'baz': 2}]})
print([match.value for match in matches])

Verify before relying

  • Whether the package supports Python versions below 3.10 despite classifiers listing 3.10+ support
  • Performance characteristics on large JSON documents or deeply nested structures

Package facts

LicenseApache 2.0 permissive
Python supportNot specified
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceActively maintained 171 days since the last release
Last repo commit
First released
Downloads72,852,742 / month, #457 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Evidence: jsonpath_ng-1.8.0-py3-none-any.whl

Tags

Capabilities
jsonpath query languagejson path parserextract values from jsonjson tree traversaljsonpath expressionsjson filtering and updatesjson path ast
Topics
json-queryingast-manipulationdata-extraction

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “extract values from json”

  • jsonpath-ngParse, query, and modify JSON structures using JSONPath expressions…
  • nietA command-line tool that extracts and transforms data from YAML,…
  • jsonpath-pythonExtracts, filters, sorts, and updates values in JSON data using…

Give your agent the search over MCP, or paste the wish link into any chat.

Similar packages

jsonpath-python Worth it
PyPI · Python Modules · released May 2026

Extracts, filters, sorts, and updates values in JSON data using JSONPath expressions, with zero third-party dependencies and pure Python string parsing.

Install it if you need practical JSONPath querying; if you require strict RFC 9535 compliance, verify the feature set first.

MITpure Python · 3.8+
27.1Mdownloads / mo
jsonpath-rw Skip
PyPI · Text Processing · released Apr 2015

Parses and executes JSONPath expressions against JSON data, returning matched values and their full paths within the document structure.

No, not for new projects.

Apache-2.0builds from sourceabandoned
4.1Mdownloads / mo
jsonpath-rw-ext Skip
PyPI · Text Processing · released Jul 2019

Extends JSONPath RW with additional query operations: len, sorted, filter, arithmetic, sub, and split functions for querying and transforming JSON data.

Apache-2.0pure Pythonabandoned
1.4Mdownloads / mo
jsonpath-rfc9535 With conditions
PyPI · Text Processing · released Nov 2025

Queries JSON data using RFC 9535 JSONPath expressions, returning matched values with their locations and parent references.

However, note the 257-day gap since last release—maintenance appears inactive, so consider this if you need active bug fixes or feature development.

MITpure Python · 3.8+aging
483.7Kdownloads / mo
python-jsonpath Worth it
PyPI · Text Processing · released Jul 2026

Implements RFC 9535-compliant JSONPath query evaluation, plus RFC 6901 JSON Pointer and RFC 6902 JSON Patch operations for Python.

MITpure Python · 3.8+
1.5Mdownloads / mo
objectpath Skip
PyPI · Python Modules · released Nov 2018

ObjectPath is a query language for finding and extracting data from nested JSON documents using a syntax similar to XPath but with SQL-like expressiveness, arithmetic, and built-in functions.

MITpure Pythonabandoned
282.9Kdownloads / mo

See also bc-jsonpath-ng · robotframework-jsonlibrary · jmespath · jsonpath