繁体   English   中英

Python从JSON提取没有标签的数据?

[英]Python Extracting Data from JSON without a label?

此处的API: https//api.bitfinex.com/v2/tickers?symbols = ALL

没有任何标签,我想提取所有tBTCUSD,tLTCUSD等。基本上所有内容都没有数字。 通常,如果标记了标签,我会提取这些信息,以便我可以执行以下操作:

data['name']

或类似的东西,但是此API没有标签..我如何使用python获取此信息?

您可以这样做:

import requests

j = requests.get('https://api.bitfinex.com/v2/tickers?symbols=ALL').json()    

mydict = {}

for i in j:
    mydict[i[0]] = i[1:]

或使用字典理解:

mydict = {i[0]: i[1:] for i in j}

然后以以下方式访问它:

mydict['tZRXETH']

我目前无法访问Python,但看起来它们是由几个子数组的超数组组成的。

您应该能够将所有内容(超数组)提取为数据,然后执行以下操作:

for array in data:
print array[0]

不知道这是否能回答您的问题。 让我知道!

即使它没有标签(或更具体地说,如果它不是JSON对象),它也仍然是合法的JSON,因为它只是父数组中包含的一些数组。

假设您已经可以从api获取文本,则可以使用json.loads其作为Python对象json.loads

import json
data = json.loads(your_data_as_string)

然后,由于要提取的标签始终位于数组的第一位置,因此可以使用列表理解将它们存储在列表中:

labels = [x[0] for x in data]

labels将是:

['tBTCUSD', 'tLTCUSD', 'tLTCBTC', 'tETHUSD', 'tETHBTC', 'tETCBTC', ...]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM