Upbit Open API 이용하기
먼저 Upbit홈페이지에 들어간 후 고객센터에 들어가서 Open Api 안내에 들어가서 Open API사용하기를 들어가서 API Key를 받아오겠습니다.
그러면 다음과 같은 창이 나오는데 여기서 key를 발급 받겠습니다.
* 이 때 발급 받은 Secret key는 처음 발급받을 때만 볼 수 있으므로 잘 관리하셔야 합니다.
Python에 Upbit API 인증 가능한 요청 만들기
먼저 개발하기위한 자세한 설명은 아래 사이트에서 참고하였습니다.
링크 : docs.upbit.com/
요청할 때 토큰은 JWT 토큰을 사용하므로 PyJWT를 설치해주겠습니다.
다음은 jwt토큰을 발급 받기 위한 코드입니다.
# Python 3
import jwt # PyJWT
import uuid
payload = {
'access_key': '발급받은 Access Key',
'nonce': str(uuid.uuid4()),
}
jwt_token = jwt.encode(payload, '발급받은 Secret Key')
authorization_token = 'Bearer {}'.format(jwt_token)
이렇게 해서 authorization_token을 출력하면 다음과 같이 잘 출력되는 것을 확인할 수 있습니다.
이렇게 만든 인증 토큰은 현재 자신이 보유한 코인, 보유자산, 주문하기, 주문 취소, 주문리스트 조회등 다양한 기능을 활용할 수 있는 API를 사용하기 위한 토큰입니다.
먼저 테스트를 위해 현재 자산이 어느정도 있는지 출력하는 코드를 만들어 보겠습니다.
전체 계좌 조회
먼저 주소를 호출하기 위한 requests 라이브러리를 설치하겠습니다.
예제 코드
import os
import jwt
import uuid
import hashlib
from urllib.parse import urlencode
import requests
access_key = f"액세스키"
secret_key = f"시크릿키"
server_url = f"https://api.upbit.com"
payload = {
'access_key': access_key,
'nonce': str(uuid.uuid4()),
}
jwt_token = jwt.encode(payload, secret_key)
authorize_token = 'Bearer {}'.format(jwt_token)
# print(authorize_token)
headers = {"Authorization": authorize_token}
res = requests.get(server_url + "/v1/accounts", headers=headers)
currency_data = dict(res.json()[0])
print("보유 자본")
print(f"{currency_data['currency']}: {currency_data['balance']}")
테스트를 위해 업비트에 50만원을 입금했습니다..
출력한 값은 다음과 같습니다.
이렇게 50만원이 잘 찍혀있는것을 확인할 수 있습니다.
'Python > Python 개념' 카테고리의 다른 글
Python Schema library 정리 (0) | 2022.12.19 |
---|---|
파이썬을 이용해 영화 대본 원하는 캐릭터 대사 긁어모으기 (0) | 2021.04.05 |
파이썬 멀티 프로세스 (0) | 2020.12.11 |
파이썬 디자인 패턴 - 1 (2) | 2020.12.09 |
파이썬 클래스와 객체 (0) | 2020.12.09 |
댓글