我正在尝试编写一个简单的脚本来验证我是否正确地进行了 API 调用,然后我计划从那里构建一个更复杂的程序。我收到的错误响应是:
{"error":"Invalid API key\/secret pair."}
有关我正在处理的内容的 API 文档可在以下位置找到:
https://poloniex.com/support/api/
为了简单起见,我一直在手动增加随机数。
我的代码是:
import urllib
import urllib2
import json
import time
import hmac,hashlib
APIKey = "<my_API_key>"
Secret = "<my_secret>"
post_request
"command=returnBalances"
sign = hmac.new(Secret, post_request, hashlib.sha512).hexdigest()
ret = urllib2.urlopen(urllib2.Request("https://poloniex.com/tradingApi? key=" + APIKey + "&sign=" + sign + "&nonce=0008"))
print ret.read()
最佳答案
假设您的 APIKey 和 Secret 没问题,下面这个版本就可以工作了:
import urllib
import urllib2
import json
import time
import hmac,hashlib
req={}
APIKey = "<my_API_key>"
Secret = "<my_secret>"
command="returnBalances"
req['command'] = command
req['nonce'] = int(time.time()*1000)
post_data = urllib.urlencode(req)
sign = hmac.new(Secret, post_data, hashlib.sha512).hexdigest()
#print sign
headers = {
'Sign': sign,
'Key': APIKey
}
ret = urllib2.urlopen(urllib2.Request('https://poloniex.com/tradingApi', post_data, headers))
jsonRet = json.loads(ret.read())
print jsonRet
如果您使用自己的 secret 和 API key 运行此代码,但它仍然无法运行。 那肯定是你的 APIKey 或 secret 有输入错误!! [或 APIkey 被限制为“仅取款”或您选择了 IP 限制并尝试从未知 IP 连接。]
关于python - 如何使用 Poloniex API 发送 key / secret 对?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35340849/