Skip to content Skip to sidebar Skip to footer

Coinmarketcap Data Nested Dictionary

Hi I am still in the beginner stages of learning python. I am trying to extract data from Coinmarketcap.com using their api system. I am able to get an output with one large dictio

Solution 1:

In Python, you can access the value of the dictionary by simply doing

value = dict[key]

In your case, you have a nested JSON. You can access the values by chaining the keys.

Your JSON looks like

{"status":{"timestamp":"2019-07-17T20:54:40.829Z","error_code":0,"error_message":null,"elapsed":7,"credit_count":1},"data":{"ADA":{"id":2010,"name":"Cardano","symbol":"ADA","slug":"cardano","num_market_pairs":90,"date_added":"2017-10-01T00:00:00.000Z","tags":["mineable"],"max_supply":45000000000,"circulating_supply":25927070538,"total_supply":31112483745,"platform":null,"cmc_rank":12,"last_updated":"2019-07-17T20:54:04.000Z","quote":{"USD":{"price":0.056165857414,"volume_24h":102375843.427606,"percent_change_1h":-0.816068,"percent_change_24h":5.42849,"percent_change_7d":-21.8139,"market_cap":1456216147.0000284,"last_updated":"2019-07-17T20:54:04.000Z"}}}}}

You can access the price as

price = data['data']['ADA']['quote']['USD']['price']

Hope it helps

Solution 2:

Despite similarity it isn't a dictionary as the built-in of Python. Is a JSON. You can parse by the 'key' values. Example:

import json

a = '{"status": {"timestamp": "2019-07-17T20:54:40.829Z", "error_code": 0, "error_message": null, "elapsed": 7}}'
b = json.loads(a)
print(b["status"]["elapsed"])

See that once you're already using requests you don't have to import json module. Ex:

requests.get(url).json()[0]["your_target"]) 

Analyse the response you get, maybe the index '0' does not apply.

Post a Comment for "Coinmarketcap Data Nested Dictionary"