在这里,我试图获得每秒 XLM 音量变化!我得到了 API,但在打印时它给了我所有的值!显然这不是我真正想要的,我想要的只是“音量”值!
代码
import time, base64, hmac, hashlib, requests, json
apiKey = "public api goes here"
apiSecret = "private api goes here"
apiSecret = base64.b64decode(apiSecret)
stamp = str(int(time.time())*1000)
data = "{}{}".format(apiKey, stamp).encode('utf-8')
signature = hmac.new(apiSecret, data, hashlib.sha256).digest()
signature = base64.b64encode(signature)
headers= {
"X-PCK": apiKey,
"X-Stamp": str(stamp),
"X-Signature": str(base64.b64encode(signature).decode('utf-8')),
"Content-Type": "application/json "}
base = "https://api.btcturk.com"
method = "/api/v2/ticker?pairSymbol=XLM_TRY"
uri = base+method
result = requests.get(url=uri)
result = result.json()
print(json.dumps(result, indent=2))
输出
{
"data": [
{
"pair": "XLMTRY",
"pairNormalized": "XLM_TRY",
"timestamp": 1610020217912,
"last": 2.45,
"high": 3.35,
"low": 2.0,
"bid": 2.4489,
"ask": 2.45,
"open": 2.1786,
"volume": 551009229.0058,
"average": 2.4422,
"daily": 0.2714,
"dailyPercent": 12.46,
"numeratorSymbol": "XLM",
"order": 1000
}
],
"success": true,
"message": null,
"code": 0
想要的输出
"volume": 551009229.0058
答案 0 :(得分:1)
为了获得 "volume"
条目,您只需要浏览结构:
result = requests.get(url=uri)
result = result.json()
print(result["data"][0]["volume"])
无需将 result
转换回 json
。对 request.json()
的调用会将 json
中返回的 requests.get()
字符串转换为 Python 数据结构,即带有 dict
条目的 "data"
,该条目具有 {{ 1}} 中的一个条目是另一个 list
,条目 dict
所在的位置。