用python解析JSON数据
问题描述:
我刚刚开始使用Python,这就是我正在做的。我想访问Bing的API来获取当天网址的图片。我可以导入json文件,但后来我无法解析数据来提取图片的网址。用python解析JSON数据
这里是我的Python脚本:
import urllib, json
url = "http://www.bing.com/HPImageArchive.aspx? format=js&idx=0&n=1&mkt=en-US"
response = urllib.urlopen(url)
data = json.loads(response.read())
print data
print data["images"][3]["url"]
我得到这个错误:
Traceback (most recent call last):
File "/Users/Robin/PycharmProjects/predictit/api.py", line 9, in <module>
print data["images"][3]["url"]
IndexError: list index out of range
仅供参考,这里是JSON文件的样子: http://jsonviewer.stack.hu/#http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-US
答
print data["images"][0]["url"]
有只是“图像”阵列中的一个对象
答
由于images
列表中只有一个元素,因此您应该有data['images'][0]['url']
。
您还可以在链接到的“json查看器”的“查看器”选项卡下看到。
+0
甜!谢谢,那是好东西。 – Robin
''images''下只有一个元素,为什么选择'data [“images”] [3]'? – DeepSpace
从你给你的例子应该用0指数 – vsminkov