Extract Elements From A JSON Document
JMESPath (pronounced "jaymz path") allows you to declaratively specify how to extract elements from a JSON document.
For example, given this document:
{"foo": {"bar": "baz"}}
The jmespath expression foo.bar will return "baz".
JMESPath also supports:
Referencing elements in a list. Given the data:
{"foo": {"bar": ["one", "two"]}}
The expression: foo.bar[0] will return "one". You can also reference all the items in a list using the * syntax:
{"foo": {"bar": [{"name": "one"}, {"name": "two"}]}}
The expression: foo.bar[*].name will return ["one", "two"]. Negative indexing is also supported (-1 refers to the last element in the list). Given the data above, the expression foo.bar[-1].name will return ["two"].
The * can also be used for hash types:
{"foo": {"bar": {"name": "one"}, "baz": {"name": "two"}}}
The expression: foo.*.name will return ["one", "two"].
- Developed at devel:languages:python
- Sources inherited from project openSUSE:Factory
-
8
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Backports:SLE-15-SP4:FactoryCandidates/python-jmespath && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
jmespath-0.7.1.tar.gz | 0000019696 19.2 KB | |
python-jmespath.changes | 0000001645 1.61 KB | |
python-jmespath.spec | 0000002912 2.84 KB |
Revision 7 (latest revision is 24)
- Update to version 0.7.1: * Rename ``bin/jp`` to ``bin/jp.py`` * Fix issue with precedence when parsing wildcard projections * Remove ordereddict and simplejson as py2.6 dependencies. These were never actually used in the jmespath code base, only in the unit tests. Unittests requirements are handled via requirements26.txt.
Comments 0