d9t.json
Introduction
This is a json parser. It understands everything within brackets. That means, you will give it anything like
{'activePolygonId':null,'polygons':null,'route':null}
Of course deeply nested arrays are fully supported without a limit.
Copyright / License
GPLv3
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.
d9t.json
>>> from d9t.json import parser
Let's define some json data.
>>> json = """ {'data1':null, 'data2':'something', 'data3':[-1.42,2,-3,.34,-.55',string',true,{'datanested':'something','floatdata':44.22, 'bool':false}]} """
>>> domparser = parser.JsDomParser(json)
>>> data = domparser.parse()>>> sorted(data.keys())
['data1', 'data2', 'data3']>>> data["data1"] is None
True>>> data["data2"]
'something'>>> len(data['data3'])
8>>> data['data3'][0] == -1.42
True>>> data['data3'][1] == 2
True>>> data['data3'][2] == -3
True>>> data['data3'][3] == .34
True>>> data['data3'][4] == -0.55
True>>> data['data3'][5] == ',string'
True>>> data['data3'][6] == True
True>>> sorted(data['data3'][7].keys())
['bool', 'datanested', 'floatdata']>>> data['data3'][7]['bool'] == False
True>>> data['data3'][7]['floatdata'] == 44.22
True>>> data['data3'][7]['datanested'] == 'something'
True
That's it ;)

