TheAiket TheAiket - 16 days ago 5x
JSON Question

Need read some data from JSON

I need to make a get (id, name, fraction id) for each deputy in this json

"id": "75785",
"title": "(за основу)",
"asozdUrl": null,
"datetime": "2011-12-21T12:20:26+0400",
"votes": [
"deputy": {
"id": "99111772",
"name": "Абалаков Александр Николаевич",
"faction": {
"id": "72100004",
"title": "КПРФ"
"result": "accept"
"deputy": {
"id": "99100491",
"name": "Абдулатипов Рамазан Гаджимурадович",
"faction": {
"id": "72100024",
"title": "ЕР"
"result": "none"
.......,` etc

My code is looks like that:

urlData = ""
response = urllib.request.urlopen(urlData)
content =
data = json.loads(content.decode("utf8"))
for i in data:

And i dont know what to do with that #print line, how I should write it?


You can access the list containing the deputies with data['votes']. Iterating through the list, you can access the keys you're interested in as you would with dict key lookups. Nested dicts imply you have to walk through the keys starting from the root to your point of interest:

for d in data['votes']:
    print(d['deputy']['id'], d['deputy']['name'], d['deputy']['faction']['id'])