Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.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
urllib python中的HTTPResponse错误_Python_Json_Pandas_Urllib3 - Fatal编程技术网

urllib python中的HTTPResponse错误

urllib python中的HTTPResponse错误,python,json,pandas,urllib3,Python,Json,Pandas,Urllib3,我试图用熊猫来阅读CoinMarketCapAPI。 我使用上面的链接使用json_normalize形成了一个基本查询,但我得到了以下错误- 'HTTPResponse' object does not support indexing . 我的问题是:- from urllib.request import urlopen import pandas as pd pd.io.json.json_normalize(urlopen('https://api.coinmarketcap.co

我试图用熊猫来阅读CoinMarketCapAPI。 我使用上面的链接使用json_normalize形成了一个基本查询,但我得到了以下错误-

'HTTPResponse' object does not support indexing .
我的问题是:-

from urllib.request import urlopen
import pandas as pd

pd.io.json.json_normalize(urlopen('https://api.coinmarketcap.com/v2/ticker/?limit=10'))
输出:-

TypeError: 'HTTPResponse' object does not support indexing
我正在Jupyter笔记本中运行此代码,其版本为pandas
0.20.3
我也看到了这个帖子-

但我还是没能解决我的问题。
请告诉我如何处理这个问题。此外,我希望
name
字段作为索引列,由于嵌套的json,我无法获取该字段。

urlopen
生成一个
HttpResponse
对象,而不是json字符串。您需要调用它的
read
方法来获取json

改变

pd.io.json.json_normalize(urlopen('https://api.coinmarketcap.com/v2/ticker/?limit=10'))

更新
json\u normalize
,因此在将json传递给
json\u normalize

resp = urlopen('https://api.coinmarketcap.com/v2/ticker/?limit=10')
data = json.load(resp)
pd.io.json.json_normalize(data)

我仍然得到以下错误-AttributeError:'int'对象没有属性'values'
resp = urlopen('https://api.coinmarketcap.com/v2/ticker/?limit=10')
data = json.load(resp)
pd.io.json.json_normalize(data)