…is supported by TouK. OpenRaktor is an event gathering every month the whole Warsaw startup scene in one place to collaborate. Why the best Polish IT students don’t do startups… and how to fix that! – this subject will be discussed today evening at 7 p.m. in Reaktor (Bohomolca 15).
You May Also Like
NextBeer, a sample OpenApi application for T-Mobile
- byJakub Nabrdalik
- May 22, 2012
Last summer I responded to a request for proposal from T-Mobile in Poland. This rather large telco, wanted…
TouK na warsztatach z Gita
- byAgata Madaj
- March 20, 2013
W najbliższą sobotę odbędą się Git kata, warsztaty doskonalenia pracy z Gitem, popularnym systemem zarządzania kodem. Jednym z mentorów będzie Jakub Nabrdalik z TouK.
Need to make a quick json fixes – JSONPath for rescue
- byArek Burdach
- March 22, 2015
From time to time I have a need to do some fixes in my json data. In a world of flat files I do this with grep/sed/awk tool chain. How to handle it for JSON? Searching for a solution I came across the JSONPath. It quite mature tool (from 2007) but I haven't hear about it so I decided to share my experience with others.
First of all you can try it without pain online: http://jsonpath.curiousconcept.com/. Full syntax is described at http://goessner.net/articles/JsonPath/
But also you can download python binding and run it from command line:
After that you can use inside python or with simple cli wrapper:
… you can use it in your shell e.g. for json:
You can print only book nodes with price lower than 10 by:
Result:
Have a nice JSON hacking!From time to time I have a need to do some fixes in my json data. In a world of flat files I do this with grep/sed/awk tool chain. How to handle it for JSON? Searching for a solution I came across the JSONPath. It quite mature tool (from 2007) but I haven't hear about it so I decided to share my experience with others.
First of all you can try it without pain online: http://jsonpath.curiousconcept.com/. Full syntax is described at http://goessner.net/articles/JsonPath/
But also you can download python binding and run it from command line:
$ sudo apt-get install python-jsonpath-rw
$ sudo apt-get install python-setuptools
$ sudo easy_install -U jsonpathAfter that you can use inside python or with simple cli wrapper:
#!/usr/bin/python
import sys, json, jsonpath
path = sys.argv[1]
result = jsonpath.jsonpath(json.load(sys.stdin), path)
print json.dumps(result, indent=2)
… you can use it in your shell e.g. for json:
{
"store": {
"book": [
{
"category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{
"category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
},
{
"category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99
},
{
"category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
}
}
You can print only book nodes with price lower than 10 by:
$ jsonpath '$..book[?(@.price Result:
[
{
"category": "reference",
"price": 8.95,
"title": "Sayings of the Century",
"author": "Nigel Rees"
},
{
"category": "fiction",
"price": 8.99,
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"author": "Herman Melville"
}
]
Have a nice JSON hacking!From time to time I have a need to do some fixes in my json data. In a world of flat files I do this with grep/sed/awk tool chain. How to handle it for JSON? Searching for a solution I came across the JSONPath. It quite mature tool (from 2007) but I haven't hear about it so I decided to share my experience with others.