我正在按照这个教程使用 python 抓取 api:
https://www.youtube.com/watch?v=pxofwuWTs7c
网址给出:
{"date":"1468500743","ticker":{"buy":"27.96","high":"28.09","last":"27.97","low":"27.69","sell":"27.97","vol":"41224179.11399996"}}
我试图跟随视频并获取"最后"数据。
import urllib2
import json
url = 'https://www.okcoin.cn/api/v1/ticker.do?symbol=ltc_cny'
json_obj=urllib2.urlopen(url)
data= json.load(json_obj)
for item in data['ticker']:print item['last']
键入最后一行后,python返回:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: string indices must be integers
我认为您只是误读了服务器返回的有效负载。在这种情况下,ticker
键在由 json
模块转换的字典中不属于 list
类型。
所以你应该执行以下操作
import urllib2
import json
url = 'https://www.okcoin.cn/api/v1/ticker.do?symbol=ltc_cny'
json_obj = urllib2.urlopen(url)
data = json.load(json_obj)
print data['ticker']['last']