各社のAPIを使って仮想通貨の価格を表示してみる
以前はcoincheckのAPIだけ使っていましたが、仮想通貨の取引所も増えてきましたので他の取引所が提供しているAPIを試してみました。
pythonで仮想通貨の価格(日本円)表示します。
[rtoc_mokuji title=”” title_display=”” heading=”h3″ list_h2_type=”” list_h3_type=”” display=”” frame_design=”” animation=””]
目次
Zaif
APIの公式ドキュメントは下記。
ソースコード
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import requests
import json
coins = [
[1, 'BTC', 'btc_jpy'],
[2, 'XEM', 'xem_jpy'],
[3, 'MONA', 'mona_jpy'],
]
urlbase = 'https://api.zaif.jp/api/1/last_price/'
def main():
for i in range(len(coins)):
response = requests.get(urlbase+coins[i][2])
if response.status_code != 200:
raise Exception('return status code is {}'.format(response.status_code))
rate = json.loads(response.text)
print("%-4s : \%-10s" % (coins[i][1], rate['last_price']))
if __name__ == "__main__":
main()
実行結果
[user@localhost zaif]$ date
Sun Nov 12 20:59:35 JST 2017
[user@localhost zaif]$ /usr/local/bin/python3 zaif.py
BTC : \720000.0
XEM : \21.1
MONA : \305.7
bitflyer
APIの公式ドキュメントは下記。
ソースコード
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import requests
import json
coins = [
[1, 'BTC', 'btc_jpy'],
[2, 'FX_BTC', 'fx_btc_jpy'],
]
urlbase = 'https://api.bitflyer.jp/v1/getticker?product_code='
def main():
for i in range(len(coins)):
response = requests.get(urlbase+coins[i][2])
if response.status_code != 200:
raise Exception('return status code is {}'.format(response.status_code))
rate = json.loads(response.text)
print("%-6s : \%-10s" % (coins[i][1], rate['ltp']))
if __name__ == "__main__":
main()
実行結果
[user@localhost bitflyer]$ /usr/local/bin/python3 bitflyer.py
BTC : \710919.0
FX_BTC : \717699.0
bitbank
APIの公式ドキュメントは下記。
ソースコード
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import requests
import json
coins = [
[1, 'BTC', 'btc_jpy'],
[2, 'XRP', 'xrp_jpy'],
[3, 'MONA', 'mona_jpy'],
[4, 'BCC(BCH)','bcc_jpy'],
]
urlbase = 'https://public.bitbank.cc/'
def main():
for i in range(len(coins)):
response = requests.get(urlbase+coins[i][2]+'/ticker')
if response.status_code != 200:
raise Exception('return status code is {}'.format(response.status_code))
result = json.loads(response.text)
print("%-8s : \%-10s" % (coins[i][1], result['data']['last']))
if __name__ == "__main__":
main()
実行結果
[user@localhost bitbank]$ date
Sun Nov 12 21:18:20 JST 2017
[user@localhost bitbank]$ /usr/local/bin/python3 bitbank.py
BTC : \718474
XRP : \22.762
MONA : \320.000
BCC(BCH) : \180365
BTCBOX
APIの公式ドキュメントは下記。
https://blog.btcbox.jp/archives/8759#toc3
ソースコード
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import requests
import json
ticker = 'https://www.btcbox.co.jp/api/v1/ticker/'
def main():
response = requests.get(ticker)
if response.status_code != 200:
raise Exception('return status code is {}'.format(response.status_code))
rate = json.loads(response.text)
print("BTC_JPY : \%-10s" % (rate['last']))
if __name__ == "__main__":
main()
実行結果
[user@localhost btcbox]$ date
Sun Nov 12 21:26:59 JST 2017
[user@localhost btcbox]$ /usr/local/bin/python3 btcbox.py
BTC_JPY : \710030
kraken
APIの公式ドキュメントは下記。
ソースコード
#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import requests
import json
coins = [
[1, 'XBT(BTC)', 'xbtjpy', 'XXBTZJPY'],
[2, 'ETH', 'ethjpy', 'XETHZJPY'],
]
urlbase = 'https://api.kraken.com/0/public/Ticker?pair='
def main():
for i in range(len(coins)):
response = requests.get(urlbase+coins[i][2])
if response.status_code != 200:
raise Exception('return status code is {}'.format(response.status_code))
rate = json.loads(response.text)
print("%-8s : \%-10s" % (coins[i][1], rate['result'][coins[i][3]]['c'][0]))
if __name__ == "__main__":
main()
実行結果
[user@localhost kraken]$ date
Sun Nov 12 21:45:18 JST 2017
[user@localhost kraken]$ /usr/local/bin/python3 kraken.py
XBT(BTC) : \714001.000
ETH : \34330.00000
まとめ
国内の取引所の差額なんかを一覧にしてみるのも面白そうですね。
コメント