Python お金の健康

CoinMarketCapのAPIをPythonで学ぶ!テストコードの使い方を解説

CoinMarketCapのAPIってなに?
 
どんなことができるの?
 
どうやって使ったらいいの?

という悩みを解決できる記事になっています。

なぜなら、私はプログラミング言語Pythonで
投資の分析をしているからです。

結論だけ言うと、

仮想通貨の時価総額を簡単に調べられます。

この記事ではCoinMarketCapのAPIをPythonで扱う方法を紹介します。

読み終えていただければ、

APIをPythonで扱えるようになります。

※おすすめのプログラミングスクール

せっかくプログラミングができるなら

稼げるレベルまで高めませんか?

現役エンジニアが就職サポートまでしています。

無料トライアル制度もあるのでおすすめしています↓

CoinMarketCapのAPIとは?

CoinMarketCap APIは、アプリケーション開発者、データサイエンティスト、

およびエンタープライズビジネスプラットフォームのミッションクリティカルな

要求を満たすように特別に設計された、高性能のRESTful JSONエンドポイントです。

APIリファレンスには、開発者がサードパーティのアプリケーションと

プラットフォームを統合するために必要なすべての技術ドキュメントが含まれています。

一般的な質問に対する追加の回答は、CoinMarketCap API FAQにあります。

(参考:CoinMarketCap API FAQ)

クイックスタートガイド

CoinMarketCap APIを早く使いたい開発者向けに、

簡単な手順を紹介します。

1.無料の開発者ポータルアカウントにサインアップします。

pro.coinmarketcap.comでサインアップできます-

(これは、最新の市場データを備えたライブの本番環境です。)

ニーズに合っている場合は無料の基本プランを選択するか、

有料プランにアップグレードしてください。

(参考:料金プランを見る

2.APIキーをコピーします。

サインアップすると、開発者ポータルのアカウントダッシュボードが表示されます。

左上のパネルの[APIキー]ボックスからAPIをコピーします。

coinmarketcapからAPIを取得する

3.キーを使用してテスト呼び出しを行います。

以下に示すコード例を使用して、選択したプログラミング言語で

テスト呼び出しを行うことができます。

この例では、すべてのアクティブな暗号通貨を時価総額でフェッチし、

時価総額を米ドルで返します。

サンプルコードのAPIキーを独自のものに置き換えて、

APIドメインpro-api.coinmarketcap.comを使用するか、

sandbox-api.coinmarketcap.comのテストサンドボックス環境に

テストAPIキーb54bcf4d-1bca-4e8e-9a24-22ff2c3d462cを使用してください。

サンドボックスAPIにはモックデータが含まれているため、

アプリケーションで使用しないでください。

4.アプリケーションを実装します。

APIキーが機能していることを確認したので、

このAPIリファレンスの残りの部分を読んでAPIに慣れ、

アプリケーションの構築を開始してください。


注:現在、Javascriptを使用してクライアント側で

HTTPリクエストを行うことは、CORS構成によって禁止されています。

これは、APIキーが盗まれないように、

アプリケーションのユーザーに表示されるべきではないAPIキーを保護するためです。

独自のバックエンドサービスを介して呼び出しをルーティングすることにより、APIキーを保護します。

Pythonでサンプルコードを使う

from requests import Request, Session
from requests.exceptions import ConnectionError, Timeout, TooManyRedirects
import json

url = 'https://sandbox-api.coinmarketcap.com/v1/cryptocurrency/listings/latest'
parameters = {
  'start':'1',
  'limit':'5000',
  'convert':'USD'
}
headers = {
  'Accepts': 'application/json',
  'X-CMC_PRO_API_KEY': 'b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c',
}

session = Session()
session.headers.update(headers)

try:
  response = session.get(url, params=parameters)
  data = json.loads(response.text)
  print(data)
except (ConnectionError, Timeout, TooManyRedirects) as e:
  print(e)

返ってきた結果がこちら

coinmarketcapのサンプルAPIの結果

無事にテストデータを取得できました。

次回はAPIキーを取得して、最新データを取得します。

※おすすめのプログラミングスクール

せっかくプログラミングができるなら

稼げるレベルまで高めませんか?

現役エンジニアが就職サポートまでしています。

無料トライアル制度もあるのでおすすめしています↓

ここまで読んでくださりありがとうございました。^^

-Python, お金の健康
-