Home > OS >  Making Calls to a JSON file
Making Calls to a JSON file

Time:07-15

I am trying to make calls to a JSON file like you would an API; however, I am having trouble. I was wondering if someone could please help.

Here is a sample of the JSON data:

{'businessModelInfo': {'52ff2dd1e4b0b193ed664d41': {'parentId': '52ff2cfce4b0b193ed664d1a', 'nodeInfo': {'position': 2, 'description': 'Platform for the security monitoring, detection & prevention of unauthorized access, misuse & modification to the enterprise network'}, 'id': '52ff2dd1e4b0b193ed664d41', 'name': 'Network Security'}, '52ff2df2e4b0b193ed664d43': {'parentId': '52ff2cfce4b0b193ed664d1a', 'nodeInfo': {'position': 212, 'description': 'Application security testing, vulnerability assessment & runtime application protection'}, 'id': '52ff2df2e4b0b193ed664d43', 'name': 'Application Security'}, '52ff2e04e4b0b193ed664d45': {'parentId': '52ff2cfce4b0b193ed664d1a', 'nodeInfo': {'position': 55, 'description': 'Identity & Access Management (IAM) solution for the user login, authentication and authorization'}, 'id': '52ff2e04e4b0b193ed664d45', 'name': 'IAM'}

Here is the code I'm trying to call the "name" with:

with open(r'C:\Users\UserName\Projects\project_one\test.json', 'r') as f:
    data = json.loads(f.read())
    print(data['name'])

Error:

KeyError: 'name'

How would I obtain all the 'parentId', 'name', 'id', and 'description'?

Thanks!

CodePudding user response:

As json is key-value pair, if you want to call the nested value, you have to state like below:

# get name of first object
data['businessModelInfo']['52ff2dd1e4b0b193ed664d41']['name']

# get description
data['businessModelInfo']['52ff2dd1e4b0b193ed664d41']['nodeInfo']['description']
  • Related