Hay dos maneras en que puede "descifrar" JSON con Python, después de que haya analizados en dicts y listas con la biblioteca JSON.
En primer lugar, para acceder a él por los índices, así:
url_list = [t['entries'][0]['url'] for t in data['windows'][0]['tabs']]
O bien, puede iterar sobre la estructura de árbol. La función de ejemplo siguiente no es de propósito general, simplemente ilustra que debe considerar los tres tipos diferentes de "nodos" de JSON de forma diferente al analizar el árbol. El "valor" de una clave puede ser datos, una lista de nodos secundarios sin claves, o un dict que es básicamente un nuevo objeto JSON. No se puede ejecutar revisando cada nodo por su nombre, datos e hijos como lo haría con un árbol normal.
def depthFirstSearch(self, jsonobj, target, parentKey=None):
if isinstance(jsonobj, dict):
for key, value in jsonobj.items():
if isinstance(value, (dict, list)):
self.depthFirstSearch(value, target, key)
else: # "data" node
if key == target and parentKey not in self.parentsToExclude:
self.results.append(value)
self.parents[parentKey] += 1
if isinstance(jsonobj, list):
for value in jsonobj:
#lists don't have keys, pass along key from last dict
self.depthFirstSearch(value, target, parentKey)
Cuando buscó en Python y JSON, ¿qué encontró? ¿Has probado "Python Library JSON"? ¿Qué viste? –
Cuando busqué en Google python decode json encontré esta publicación .... – Grummle