Istnieją dwa sposoby można „dekodowania” json z Pythonem, po już analizowany go do dicts i list z biblioteki json.
Po pierwsze, dostęp do niej przez indeksy, podobnie jak to:
url_list = [t['entries'][0]['url'] for t in data['windows'][0]['tabs']]
Albo można iteracyjne nad jego strukturze drzewa. Poniższa przykładowa funkcja nie jest ogólnym celem, po prostu ilustruje, że podczas analizowania drzewa należy rozważyć różne rodzaje "węzłów" JSON. "Wartością" klucza może być dane, lista węzłów potomnych bez kluczy lub dyktatura, która jest w zasadzie nowym obiektem JSON. Nie można po prostu sprawdzać każdego węzła pod względem jego nazwy, danych i dzieci podobnych do zwykłych drzew.
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)
Podczas wyszukiwania w Google Python i JSON, co znalazłeś? Czy próbowałeś "Python Library JSON"? Co widziałeś? –
Podczas wyszukiwania w Google python dekode json znalazłem ten wpis .... – Grummle