Extract Elements From A JSON Document

Edit Package python-jmespath

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"].

Refresh
Refresh
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)
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 308963 from Robert Schweikert's avatar Robert Schweikert (rjschwei) (revision 7)
- 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
openSUSE Build Service is sponsored by