如何使用熊猫从Binance API读取JSON格式?

时间:2018-12-29 00:01:04

标签: python json python-3.x dataframe binance

我想从币安的剩余api获取并发的实时价格。

我正在使用:

import json

with open('salida_tweets.txt') as f:
    for line in f:
        texto = json.loads(line)
        objetos = texto.get('text')

        # implement logic
        if objetos:
            print(objetos)

调用此函数时会出现以下错误:

text

以前,我使用此函数从币安api调用历史数据:

def inCoin(coin):
    url = 'https://api.binance.com/api/v3/ticker/price?symbol='+coin+'USDT'
    df = pd.read_json(url)
    df.columns = ["symbol","price"]
    return df

这很流畅。

我只想要该硬币的价格,然后从该URL将其显示为整数或数据框:

    Traceback (most recent call last):
  File "ee2.py", line 201, in <module>
    aa = inCoin('BTC')
  File "ee2.py", line 145, in inCoin
    df = pd.read_json(url, orient='index')
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/io/json/json.py", line 422, in read_json
    result = json_reader.read()
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/io/json/json.py", line 529, in read
    obj = self._get_object_parser(self.data)
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/io/json/json.py", line 546, in _get_object_parser
    obj = FrameParser(json, **kwargs).parse()
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/io/json/json.py", line 638, in parse
    self._parse_no_numpy()
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/io/json/json.py", line 861, in _parse_no_numpy
    loads(json, precise_float=self.precise_float), dtype=None).T
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/core/frame.py", line 348, in __init__
    mgr = self._init_dict(data, index, columns, dtype=dtype)
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/core/frame.py", line 459, in _init_dict
    return _arrays_to_mgr(arrays, data_names, index, columns, dtype=dtype)
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/core/frame.py", line 7356, in _arrays_to_mgr
    index = extract_index(arrays)
  File "/home/hspace/.local/lib/python3.6/site-packages/pandas/core/frame.py", line 7393, in extract_index
    raise ValueError('If using all scalar values, you must pass'
ValueError: If using all scalar values, you must pass an index

感谢您的帮助。

此外,如果您可以提供更多调试此类“值”错误的详细信息,那就太好了。

0 个答案:

没有答案