Access nested dicts and lists using JSON-like path notation.
Note that this code is written for python 3.
You can download this module from pypi at http://pypi.python.org/pypi/jpath
To access arrays or names with spaces in them, use the '' notation. You can use negative indices with arrays to count from the end.
["foo"]["bar"]["baz"] array[-1].attr 
You can use the wildcard character '*' to iterate over all elements:
This may return more or less than a single element. Use get to get the first one, and get_all to get a list of all possibilities. If you want to skip any number of elements in path, use two dots '..':
You can slice the arrays just like in python:
Finally, you can filter the elements:
foo(bar.baz=true) foo.bar(baz>0).baz foo(bar="yawn").bar
At the moment only =, <, >, >=, <= and != operators are available, and you can only use them with strings, integers and boolean values.