PythonXMLからJSONへ

Python Xml Json



Extensible Markup Language(XML)とJavaScript Object Notation(JSON)は、データを保存するための2つの有名なデータ形式です。 JSONとXMLの両方を使用すると、人間だけでなく機械でも読み取れる方法でデータを保存できます。まず、JSONは、サーバーとソフトウェアアプリケーション間でデータを交換するために主に使用されるデータ構造の一種です。データをキーと値のペアとして保存します。 JSONは、キーと値のペアがコロン(:)に基づいて分離され、1つの完全なキーと値のペアがコンマに基づいて他のペアによって分離されるデータのオブジェクトを作成します。







さらに、XMLはHTMLタイプのマークアップ言語であり、データの格納にも使用されます。ただし、XMLは事前定義されたタグを提供しません。独自のタグを作成してデータを保存できます。すでに説明したように、JSONとXMLの両方を使用して、サーバーとソフトウェアアプリケーション間でデータを交換します。ただし、2つのデータ形式は多少異なります。 JSONはオブジェクトタイプのデータストレージ形式ですが、XMLにはタイプがありません。 XMLファイルは、データを文字列形式でのみ保存し、JSONファイルよりも重いものです。一方、JSONファイルには、文字列、配列、数値の浮動小数点数、およびブール値を格納できます。



この記事では、Pythonを使用したXMLからJSONへの変換について説明します。 Python xmltodictモジュールは、XMLをJSON形式に変換するために使用されます。



xmltodictモジュールのインストール

XMLからJSONへの変換を開始する前に、xmltodictモジュールをインストールする必要があります。 xmltodictモジュールは、python indexパッケージ(pip)を使用してインストールでき、Python 2および3にインストールできます。pip2の場合は、次のコマンドを実行してxmltodictモジュールをインストールします。





pip install xmltodict

pip3を使用している場合は、次のコマンドを実行してxmltodictモジュールをインストールします。

pip3インストールxmltodict



Debianベースのシステムの場合は、次のコマンドを実行してxmltodictモジュールをインストールします。

sudo apt install python-xmltodict

上記のコマンドはPython2に適しています。 Python3バージョンの場合は、次のコマンドを実行します。

sudo apt install python3-xmltodict

XMLからJSONへの変換

それでは、XMLデータをJSON形式に変換しましょう。この変換には、xmltodictとJSONモジュールを使用します。 jsonは組み込みのPythonモジュールです。したがって、それらをインストールする必要がなくなります。 xmltodict.parse()関数は、XMLデータをPython辞書に変換します。次に、json.dumps()関数は、変換された辞書オブジェクトを引数として受け取り、さらにそれをJSON形式に変換します。したがって、これは2つのステップのプロセスです。

まず、xmltodict.parse()関数を使用してXMLをPython辞書オブジェクトに変換する必要があります。

次に、json.dumps()関数を使用してPython辞書オブジェクトをJSON形式に変換します。 json.dumps()関数では、データ間にスペースを追加するためにindentプロパティが使用されます。

#モジュールのインポート
輸入xmltodict
輸入json
#xmlの宣言
my_xml= '' '


1
マレの庭園
3
インターネット
NS


2
ゴールデンチューリップリトルパレス
4

インターネット
ジム
パーキング
レストラン

NS


'' '

#xmlをPython辞書にカバーする
dict_data=xmltodict。解析する((my_xml)。
#jsonへのカバー
json_data=json。ダンプ((dict_dataインデント=2)。
印刷((json_data)。

出力

出力は、XMLがJSON形式に正常に変換されたことを示しています。

XMLファイルからJSONファイルへの変換

XMLファイルのデータを変換してJSONファイルに保存できます。 XMLファイルを開き、XMLデータをJSONに変換して、JSONファイルに保存しましょう。

以下はXMLファイルです。

#モジュールのインポート
輸入json
輸入xmltodict
#xmlファイルを開く
開いた(('hotels.xml''NS')。 なのでxmlfileObj:
#xmlデータを辞書に変換する
data_dict=xmltodict。解析する((xmlfileObj。読んだ(()。)。
xmlfileObj。選ぶ(()。
#辞書オブジェクトを使用してJSONオブジェクトを作成する
jsonObj=json。ダンプ((data_dict)。

#jsonデータをjsonファイルに保存する
開いた(('hotels.json' 'の')。 なのでjsonfileObj:
jsonfileObj。書きます((jsonObj)。
jsonfileObj。選ぶ(()。

出力

Pythonインタープリターはエラーを表示しません。これは、JSONデータが.jsonファイルに正常に保存されたことを意味します。

結論

XMLとJSONは、データを格納するための2つの一般的なデータ形式です。 XMLデータは、xmltodictおよびJSONモジュールを使用してJSON形式に変換できます。この記事では、XMLからJSONへのデータ変換について例を挙げて説明します。