Pythonで為替レートを取得する方法
数行のコードでライブ・過去の為替レートをPythonで読む。キーなしで始められ、登録後は月10,000コール。すべてのレスポンスがレートの鮮度を教えてくれる。
Pythonで為替レートを取得する最短ルートは/v1/latest/USDへのGETリクエストだ。31通貨のレートと2つの鮮度フィールド(sourceとmarket_session)を含むJSONが返る。最初のコールにAPIキーは不要。
/v1/latest/{base}への1回のGETで31通貨のレートがJSONで返る。sourceとmarket_sessionを持ち、各レートの鮮度がわかる。最初のコール — 依存パッケージなし
標準ライブラリ以外は何も要らない。1回のコールならurllib.requestで足りる:
これはキーなしで動く。匿名コールはIPアドレスごとに上限があるため、簡単な試験を超えるなら無料キーを取得する。
requestsとAPIキーで
ほとんどのプロジェクトはすでにrequestsを使っている。キーはベアラートークンとして渡す:
無料キーで上限は月10,000コール・毎分12リクエストに上がる。Authorizationを設定できないプラットフォーム向けにX-API-Keyヘッダーも使える。
金額を換算する
レート一覧ではなく換算が必要なら/v1/convertを呼ぶ。レートと換算額が一緒に返る:
レートの鮮度を知る
すべてのレスポンスにある2つのフィールドが、いま見ているものを教えてくれる。sourceはデータの種別:集約スポットのlive、欧州中央銀行参照フィックスのecb_daily、米連邦準備制度日次系列のfred_daily。market_sessionはopen、weekend、既知の平日休場を示すinterbank_closedのいずれかだ。
noticeフィールドにその旨が記載されている。過去の特定日を読む
パスに日付を入れれば1999年まで遡って任意の日を照会できる。レスポンスにはis_forward_filledが追加され、週末や祝日などその日にレートが公表されなかった場合にtrueになる:
日付範囲全体の系列を1コールで取るには、start_dateとend_dateを付けて/v1/rangeを使う。詳細は別のガイドで扱っている。