json parserとは?オンラインパーサやPython、JSでの書き方を解説!

みなさんこんにちは!JSONをパースしなくてはならないときって多々ありますよね。実際にコードを書いてパースしたり、オンラインツールでパースしたりする人がほとんどだと思います。

今回はJSONのパースの仕方をオンラインエディタから、実際にコードを書くところまで紹介していこうと思います!JSONのパースの方法を完全に理解したい方は是非参考にしていただければ幸いです!

目次

JSON parserってなに?どういう意味?

さて、先ほどからパースやらパーサーやら難しい言葉がでていますが、言葉の定義をきちんとしておくことは大切ですので以下で説明していきます。

パースとは

まずは、parse(パース)という単語ですが、こちらは解析するという意味です。コンピュータに限って言えば、自分の環境で扱えるように解析、変換することをparseと言います。

例えば、JSONファイルはそのまま読み込めばただの文字列ですがこれらをJavaScriptのオブジェクトとして扱いたい。つまりJSONとして扱いたい場合適切にパースすることによって、JSONとして扱うことができます。

また、静的言語ではコンパイルして機械語に変換することもパースすると呼んだりします。

パーサーとは

parserパーサーとは、パースする処理をまとめたプログラムのことを指します。例えばオンラインでパースするツールはパーサーですし、自分でパースする関数を作ればその関数がパーサーということですね。

json パーサーとは

これらを踏まえた上でjson parserとは即ちjsonファイルをjsonのまま扱えるようにするプログラムということがわかりますね。

オススメのオンラインパーサーを紹介!

JSONデータをパースして、構文のチェックやフォーマットを行ってくれるおすすめのオンラインパーサをこちらで紹介しておきます!

Json Online Parser

こちらのオンラインパーサですね。

左側に該当のJSONデータを入れると整形や、構文チェックを行ってくれます。

ちなみに、このように構文にミスがあるとエラーとして教えてくれます。このオンラインパーサはローカルのプログラムで動いているのでサーバーに実際にデータを送ることはなく大切な情報をパースするときにも役立ちます。

Pythonでjsonをパースしてみる

さて、今度は実際にPythonを使ってJSONをパースして見ましょう。例えば以下のような文字列があったとします。

json_s = '{"name": "tarou","age": 20,"hobby": "fishing"}'
print(type(json_s))
<class 'str’>

ですが、文字列ではなくJSONとして扱いたいぜ!となってのでパースしましょう。PythonでJSONのパースには標準モジュールを

import json

とすることでimportして、loads関数を使うことでパースできます。

import json

json_s = '{"name": "tarou","age": 20,"hobby": "fishing"}'
print(type(json_s))

json_d = json.loads(json_s)
print(type(json_d))
<class 'str'>
<class 'dict’>

このように、JSONオブジェクトとして扱えるようディクショナリ型に変換(パース)することができました。

また、jsonファイルをjsonオブジェクトして読み込む、つまりパースして読み込むにはload関数を使ってやればよく、そこらへんはこちらの記事で詳しく解説しているので目を通しておくと理解が深まると思います。

JavaScriptでjsonをパースしてみる

JSONはJavaScriptと親和性の高いフォーマットですが、サーバーサイドから受け取ったJSONは単なる文字列です。これをパースしてJavaScriptのオブジェクトに変換する必要がある場合も多々ありますね。

ここでは、JavaScriptでJSONをパースする方法についてみていきます。JavaScriptでJSONをパースするには、JSON.parseを使います。

var json_s = '{"name": "tarou","age": 20,"hobby": "fishing"}'
console.log(typeof(json_s))

var json_o = JSON.parse(json_s)
console.log(typeof(json_o))
console.log(json_o.name)

このようにしてやると、

string
object
tarou

きちんと、objectに変換されていますね。オブジェクトなので、keyを指定してvalueを抜き出すこともできています。jsでのJSONの取り扱いをもっと詳しく知りたい方は以下の記事を参考してみるとよいでしょう。

まとめ

いかがでしたか。JSONのパース、パーサーの違いややり方、オススメのオンラインパーサ、PythonやJSでのパースの書き方などを説明してきました。単語の分かりにくさに踊らされず本質を掴むように心がけられると良いですね!それでは!!

この記事を書いた人

日向徹かこよすぎか

kaikaikai8217@gmail.com

目次