我正在try 从python中的coin market cap api获取"stablecoins"列表.我能够检索包含数据的json文件,但在获取所需信息时遇到了很多困难.json文件如下:

{'status': {'timestamp': '2022-05-24T15:27:33.221Z', 'error_code': 0, 'error_message': None, 'elapsed': 25, 'credit_count': 2, 'notice': None}, 'data': {'id': '604f2753ebccdd50cd175fc1', 'name': 'Stablecoin', 'title': 'Stablecoin', 'description': 'Stablecoin', 'num_tokens': 99, 'last_updated': '2021-11-10T11:25:48.501Z', 'avg_price_change': -0.9522605162637363, 'market_cap': 159395366765.37, 'market_cap_change': -0.5842274725274725, 'volume': 69946658004.58846, 'volume_change': 89.59030769230768, 'coins': [{'id': 825, 'name': 'Tether', 'symbol': 'USDT'

我需要的唯一信息是名字.

import pandas as pd
import json

url = 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/category'

parameters = {
    'id': '604f2753ebccdd50cd175fc1',
    'start': '1',
    'limit': '10',
    'convert': 'USD'
}
headers = {
    'Accepts': 'application/json',
    'X-CMC_PRO_API_KEY': API_KEY,
}

resp = requests.get(url, params=parameters, headers=headers)
jsondata = json.loads(resp.text)
print(jsondata)
CoinDF = pd.json_normalize(jsondata['data']['coins'])
print(CoinDF)

感谢您的帮助!

推荐答案

json被剪切掉了,缺少了}],我添加了它们以获得预期的结果:

data = {'status': 
        {'timestamp': '2022-05-24T15:27:33.221Z', 'error_code': 0, 'error_message': None, 'elapsed': 25, 'credit_count': 2, 'notice': None}, 
         'data': {'id': '604f2753ebccdd50cd175fc1', 'name': 'Stablecoin', 'title': 'Stablecoin', 'description': 'Stablecoin', 'num_tokens': 99, 'last_updated': '2021-11-10T11:25:48.501Z', 'avg_price_change': -0.9522605162637363, 'market_cap': 159395366765.37, 'market_cap_change': -0.5842274725274725, 'volume': 69946658004.58846, 'volume_change': 89.59030769230768, 'coins': [{'id': 825, 'name': 'Tether', 'symbol': 'USDT'}]}}

正如@LMD在他的 comments 中所说,你可以用data作为dict,就像这样:

>>> data['data']['coins'][0]['name']
'Tether'

Python相关问答推荐

使用图片生成PDF Django rest框架

在for循环中仅执行一次此操作

如何使用entry.bind(FocusIn,self.Method_calling)用于使用网格/列表创建的收件箱

Pandas :多索引组

如何根据日期和时间将状态更新为已过期或活动?

Pandas 在最近的日期合并,考虑到破产

如何检测背景有噪的图像中的正方形

对整个 pyramid 进行分组与对 pyramid 列子集进行分组

通过pandas向每个非空单元格添加子字符串

有没有一种方法可以从python的pussompy比较结果中提取文本?

如何根据一列的值有条件地 Select 前N个组,然后按两列分组?

可以bcrypts AES—256 GCM加密损坏ZIP文件吗?

在Python中从嵌套的for循环中获取插值

BeautifulSoup-Screper有时运行得很好,很健壮--但有时它失败了::可能这里需要一些更多的异常处理?

如何在信号的FFT中获得正确的频率幅值

Python协议不兼容警告

高效生成累积式三角矩阵

Scipy差分进化:如何传递矩阵作为参数进行优化?

在round函数中使用列值

一维不匹配两个数组上的广义ufunc