Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从API内容字节对象提取/隔离整数?_Python_Api_Python Requests - Fatal编程技术网

Python 如何从API内容字节对象提取/隔离整数?

Python 如何从API内容字节对象提取/隔离整数?,python,api,python-requests,Python,Api,Python Requests,我从CoingeckoAPI请求一个硬币价格,但它输出一个bytes对象,我不知道如何简单地将价格提取为整数。我尝试了data.content[“nano”][“usd],这似乎是最明显的方式,但它会导致以下错误: jinja2.exceptions.UndelineError:“字节对象”没有属性 “纳米” 这是一个过程: data = requests.get("https://api.coingecko.com/api/v3/simple/price?ids=nano&vs_cur

我从CoingeckoAPI请求一个硬币价格,但它输出一个bytes对象,我不知道如何简单地将价格提取为整数。我尝试了
data.content[“nano”][“usd]
,这似乎是最明显的方式,但它会导致以下错误:

jinja2.exceptions.UndelineError:“字节对象”没有属性 “纳米”

这是一个过程:

data = requests.get("https://api.coingecko.com/api/v3/simple/price?ids=nano&vs_currencies=usd")
在jinja2
{{nanoprice.content}}
中调用此函数将为我提供字节对象:

b'{"nano":{"usd":1.18}}'
我尝试将其转换为字符串并提取浮点,但它似乎太复杂了,仍然会生成一个列表而不是整数

import requests, ast, re

nanoprice = requests.get("https://api.coingecko.com/api/v3/simple/price?ids=nano&vs_currencies=usd").content
nanoprice = "".join( chr(i) for i in nanoprice)
nanoprice = re.findall("\d+\.\d+", nanoprice)

<>首先,您可以考虑将数据转换为.jSON格式,如下所示:
nanoprice.json()

然后,您可以使用<代码>纳米([纳米] ] [ [美元] ] /代码>以获得您需要的

首先,您可以考虑将数据转换为.jSON格式,如下所示:
nanoprice.json()

然后您可以使用
nanoprice['nano']['usd']
来获得您需要的东西

这是一个非常简单的json用例

尝试从响应中读取
json
,进一步可以被视为
dict

data = requests.get("https://api.coingecko.com/api/v3/simple/price?ids=nano&vs_currencies=usd")

d=data.json()
print(d['nano']['usd'])

希望这有帮助。

这是一个非常简单的json用例

尝试从响应中读取
json
,进一步可以被视为
dict

data = requests.get("https://api.coingecko.com/api/v3/simple/price?ids=nano&vs_currencies=usd")

d=data.json()
print(d['nano']['usd'])

希望这能有所帮助。

字节对象是JSON,需要使用
JSON
模块进行转换。这将为您提供一个字典,可以使用
'nano'
和'
usd'
键对其进行索引。从带有
请求的响应中获取解析后的Python字典。Get(…).JSON()
。字节对象是JSON,需要使用
JSON
模块进行转换。这将为您提供一个字典,可以使用
'nano'
和'
usd'
键对其进行索引。使用
请求从响应中获取解析后的Python字典。获取(…).JSON()