简体   繁体   English

币安 API 发行 - Python

[英]Binance API Issue - Python

APIError(code=-2015): Invalid API-key, IP, or permissions for action APIError(code=-2015):无效的 API 密钥,IP,或操作权限

I keep getting the above issue.我不断收到上述问题。

I am not sure what the issue is.我不确定是什么问题。

I am able to access the client.get_all_tickers() command no problem but when I try to place an order or access user_data (both which require a signature) I get the error APIError(code=-2015): Invalid API-key, IP, or permissions for action我可以访问 client.get_all_tickers() 命令没有问题,但是当我尝试下订单或访问 user_data(两者都需要签名)时,我收到错误 APIError(code=-2015): Invalid API-key, IP , 或操作权限

I think the issue has something to do with the signature.我认为这个问题与签名有关。 I checked to see if I have the relevant permissions enabled and I do.我检查了是否启用了相关权限,我启用了。 Furthermore, I tried to create a new API key and I still go the same issue.此外,我尝试创建一个新的 API 密钥,但我仍然遇到同样的问题 go。

NOTE: I am using binance.us not binance.com because I am located in the US so I cannot make an account on binance.com注意:我使用的是 binance.us 而不是 binance.com,因为我位于美国,所以我无法在 binance.com 上创建帐户

Therefore, another idea I had was to create a VPN that places me in England so I can make an account through binance.com and maybe that will work.因此,我的另一个想法是创建一个将我置于英格兰的 VPN,这样我就可以通过 binance.com 创建一个帐户,也许这会奏效。

import time
import datetime
import json
from time import sleep
from binance.client import Client 
from binance.enums import *
import sys
import requests, json, time, hashlib
import urllib3
import logging
from urllib3 import PoolManager
from binance.exceptions import BinanceAPIException, BinanceWithdrawException

r = requests.get('https://www.binance.us/en/home')


client = Client(API_key,Secret_key,tld="us")
prices = client.get_all_tickers()


#Def to get location
def crypto_location(sym):
    count = 0
    for i in prices:
        count += 1
        ticker = i.get('symbol')
        if ticker == sym:
            val = i.get('price')
            count = count-1
            return count
        
bitcoin_location = crypto_location('BTCUSDT')
ethereum_location = crypto_location('ETHUSDT')
stable_coin_location = crypto_location('BUSDUSDT')
bitcoin_as_BUSD_location = crypto_location('BTCBUSD')

#%% Where to quickly get bitcoin price

t_min = time.localtime().tm_min

prices = client.get_all_tickers()

bitcoin_price = prices[bitcoin_location].get('price')
print(bitcoin_price)

ethereum_price = prices[ethereum_location].get('price')
print(ethereum_price)

stable_coin_price = prices[stable_coin_location].get('price')
print(stable_coin_price)

bitcoin_as_BUSD = prices[bitcoin_as_BUSD_location].get('price')
print(bitcoin_as_BUSD)


client.session.headers.update({ 'X-MBX-APIKEY': API_key})

client.get_account()

error occurs at client.get_account() client.get_account() 发生错误

I had the same problem, the binance APIs without any IP restrictions, expire every 90 days.我有同样的问题,没有任何 IP 限制的 binance API,每 90 天过期一次。 I have restricted the API to my IP and it works!我已将 API 限制为我的 IP 并且有效!

Still, you're sure to find it all here: https://python-binance.readthedocs.io/en/latest/index.html不过,您一定能在这里找到所有内容: https://python-binance.readthedocs.io/en/latest/index.html

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM