我一直在[u'error']

时间:2015-01-04 17:00:31

标签: python

尝试从字典中打印密钥时,为什么会出现此错误?

import urllib
import urllib2
import json

ret = urllib2.urlopen(urllib2.Request('https://poloniex.com/public?command=returnTicker'))
a = json.loads(ret.read())
print a.keys()

ret = urllib2.urlopen(urllib2.Request('https://poloniex.com/public?command=return24Volume'))
b = json.loads(ret.read())
print b.keys()            

3 个答案:

答案 0 :(得分:3)

错误是由网站产生的 - 你的代码就好了,它产生了一个json对象,显然结构为'{“error”:“”}}。尝试打印出来&弄清楚什么是错的,你可能需要一些身份验证令牌或类似的东西。

似乎有可用的API包装器,您应该考虑使用或至少理解它:http://pastebin.com/8fBVpjaj

它直接在polniex网站上展示,它清楚地显示了API秘密和密钥的需要。

答案 1 :(得分:1)

错误源自网站。 dict被加载,并表示错误,因为它只是键。

试试这个:

ret = urllib2.urlopen(urllib2.Request('https://poloniex.com/public?command=return24hVolume'))
b = json.loads(ret.read())
print b.keys()          

注意' h'在return24hVolume

答案 2 :(得分:0)

第二个网址返回:

{"error":"Invalid command."}

正如Reut Sharabani指出的那样,你必须使用' h'在网址中:

  

https://poloniex.com/public?command=return24hVolume