scripts/json_fields.py
2025-03-10 00:58:41 -04:00

37 lines
1.2 KiB
Python
Executable file

#!/usr/bin/env python3
import json
fields = {}
def fielding(jsons, out, field = None):
for key, value in jsons.items():
if field is None:
if key not in out:
out[key] = set()
if isinstance(value, dict):
fielding(value, out, nulls = nulls, field = key)
elif isinstance(value, list):
for i in value:
if isinstance(i, dict):
fielding(i, out, nulls = nulls, field = key)
else:
out[key].add(value)
else:
out[field].add(key)
if isinstance(value, dict):
if key not in out:
out[key] = set()
fielding(value, out, nulls = nulls, field = key)
elif isinstance(value, list):
out[key] = set()
for i in value:
if isinstance(i, dict):
fielding(i, out, nulls = nulls, field = key)
return out, nulls
with open(r"/home/swebb/Downloads/musicbrainz.org.json", encoding='utf-8') as file:
data = json.load(file)
testout = fielding(data, fields)
print(nulled)