ETC 코딩/PYTHON

Python으로 업비트 계좌 조회하기

세리둥절 2022. 8. 28. 22:18
반응형

Python으로 내 업비트 계좌를 조회하는 스크립트를 만들겠습니다. 먼저 업비트 Open API 관리에 들어가서 API Key를 발급받아야 합니다.

 

업비트

디지털 자산, 비트코인, 이더리움, 리플, 에이다, 솔라나 등 알트코인 거래.

upbit.com

 

그리고 아래 스크립트를 accounts.py라는 파일에 저장합니다.

# accounts.py

import jwt
import hashlib
import os
import requests
import uuid
from urllib.parse import urlencode, unquote

# 원래 환경변수는 다른 곳에 저장
os.environ['UPBIT_OPEN_API_ACCESS_KEY'] = 'access key'
os.environ['UPBIT_OPEN_API_SECRET_KEY'] = 'secret key'
os.environ['UPBIT_OPEN_API_SERVER_URL'] = 'https://api.upbit.com'

access_key = os.environ['UPBIT_OPEN_API_ACCESS_KEY']
secret_key = os.environ['UPBIT_OPEN_API_SECRET_KEY']
server_url = os.environ['UPBIT_OPEN_API_SERVER_URL']

payload = {
    'access_key': access_key,
    'nonce': str(uuid.uuid4()),
}

jwt_token = jwt.encode(payload, secret_key)
authorization = 'Bearer {}'.format(jwt_token)
headers = {
  'Authorization': authorization,
}
params = {}

res = requests.get(server_url + '/v1/accounts', params=params, headers=headers)
res.json()
print(res.json())

 

accounts.py 스크립트를 실행시킵니다.

python3 accounts.py

 

제 (비루한) 계좌의 정보가 json 형태로 들어옵니다. 

[{'currency': 'KRW', 'balance': '0.94195857', 'locked': '0', 'avg_buy_price': '0', 'avg_buy_price_modified': True, 'unit_currency': 'KRW'}, {'currency': 'TRX', 'balance': '0.00000088', 'locked': '0', 'avg_buy_price': '81.2', 'avg_buy_price_modified': False, 'unit_currency': 'KRW'}, {'currency': 'APENFT', 'balance': '0.00004803', 'locked': '0', 'avg_buy_price': '0', 'avg_buy_price_modified': False, 'unit_currency': 'KRW'}, {'currency': 'SOLO', 'balance': '14.45655387', 'locked': '0', 'avg_buy_price': '0', 'avg_buy_price_modified': False, 'unit_currency': 'KRW'}]

 

반응형

'ETC 코딩 > PYTHON' 카테고리의 다른 글

[Python] datetime.date 형식 변환하기  (0) 2022.09.21
[Python] add months 함수 만들기  (0) 2022.09.21
pip3 version upgrade하기  (0) 2022.08.28