ここでは、Pythonにおける「JSON」データの基本的な操作方法について解説しています。
「JSON」とは
「JSON(JavaScript Object Notion)」とはテキストデータをベースとした広く普及している形式です。MIMEタイプは「application/json」で拡張子は「.json」です。
jsonはPythonの標準モジュールに含まれているため、ウェブスクレイピングをする上で頻繁に出くわす形式です。特にAPIの出力形式がjsonの場合が多いです。
「JSON」データの読み込み
以下のプログラムでは予めjsonファイルを用意したおき、その内容を解析する内容となっています。用意したファイルは次のようなものです。
「random.json」というファイルをメモ帳で作成しておきます。保存時、拡張子は「.json」とするだけでjsonファイルとして保存するだけです。
以下、読み込みのプログラムです。
#「JSON」データの読み込み
import urllib.request as req
import os.path,random
import json
data_name = "random.json"#1---ファイル指定
data = json.load(open(data_name,"r",encoding="utf-8"))#2---読み込み
#3---ランダムに出力
rand_out = random.choice(data)
print(rand_out['name'],rand_out['age'])
1の部分でファイルを指定します。次に2の部分で読み込みます。このとき、open()メソッドを用いて「”r”」と「encoding=”utf-8″」を記述します。
最後に3の部分でrandom関数を用いて出力しています。
「JSON」データの書き込み
「JSON」データを書き込むには「json.dumps()」関数を用いることで可能です。以下のプログラムでは任意のデータを出力する内容となっています。
#「JSON」データの書き込み
import urllib.request as req
import os.path
import json
#1---ファイルの指定
data_name = "random.json"
data = open(data_name,mode = "w",encoding="utf-8")
#2---書き込み内容
i = {
"data":{"name": "太郎",
"age": "40"
}
}
#3---書き込み
data_w = json.dumps(i)
data.write(str(data_w))
1の部分で内容を書き込みたいファイルを指定しています。次に2の部分で書き込みたい内容を記述しています。最後に3の部分で「json.dumps()」関数を用いて書き込んでいます。