API取得プログラム作成時にJSON要素の指定を楽にする方法
APIの戻り値としてよく使用されるJSONですが、その構造化の柔軟さ故に人間にはわかりにくいことが多々あります。
プログラマーとしては楽に間違えなく要素を指定したいものです。私の活用している方法を少々お伝えしましょう。
こちらの例はPythonを使用したときの例です。配列にラベル付きで格納されればこの方法が活用できるかもしれません。
例えば、下記のAPI コマンドでALISの最新の記事一覧が取れる
https://alis.to/api/articles/recent
ChromeにJson Viewをいれていると下記のように表示される
Pythonで下記のコマンドでjsonをPythonの配列に格納したときのことを考えよう
url = f'https://alis.to/api/articles/{article_id}'
data = json.loads(requests.get(url).text)
例えば、titleを取り出すならば、うえのJson Viewを見ながら
data[‘Items’][0]['title]
とするわけだ。まあいい。階層が1個なので想像ができる。ところがこの世の中には階層が2−3あるAPIも少なくない。その場合はどうするか?
を使おう
このツールはトップのテキストボックスにJSONを貼り付けてあげると階層解釈をして見やすくして出してくれる
Json Viewを使っている場合はOffにしてからデータをコピペすることを忘れないようにしてください。
The Fastest JSON visualizerの素晴らしい点は、それぞれの要素の後ろに配列構造にした場合の記載例がでているのだ。titleであれば下記のような記載である。
data['Items']['0']['title']
僕が json.loadsで戻り値をdataとしているのはこのためだ
url = f'https://alis.to/api/articles/{article_id}'
data = json.loads(requests.get(url).text)
print(data['Items'][0]['title'])
このように、ほぼそのままコピペして使える。
一つだけ注意点は数字の部分。つまり辞書型ではない配列の部分だけは ’’(クオーテーション) を自分で取り除いて上げてほしい。
これだけだ。これだけでいけるのだ。どんなに階層が深くてもあっという間に模範解答を作ってくれる。
APIをやる人は座右のサイトだとおもう。
あらためて掲載しておきます。
では楽しいAPIライフを
この記事が気に入ったらサポートをしてみませんか?