Pythonには、XMLデータを解析し操作するためのライブラリがあります。その一つがxml.etree.ElementTreeです。

xml.etree.ElementTreeとは

xml.etree.ElementTreeは、Pythonの標準ライブラリの一部で、XMLデータの解析と作成を行うためのシンプルで効率的なAPIを提供しています。XMLは本質的に階層的なデータ形式であり、それを表現する最も自然な方法はツリーです。

ElementTreeは、全体のXMLドキュメントをツリーとして表現し、Elementはこのツリーの単一のノードを表現します。

XMLの解析

XMLデータを解析するためには、以下のようにET.parseを使用します。

import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()

また、文字列から直接XMLを解析することも可能です。

root = ET.fromstring(country_data_as_string)

XMLの検索

特定のタグを持つ要素を検索するためには、findallfindを使用します。

list = root.findall('country')
elem = root.find('country')

XPath式を使用して検索することも可能です。

root.findall("./country/neighbor")

XMLの操作

XMLの要素にアクセスしたり、新たな要素を追加したり、要素を削除したりすることも可能です。

# コンテンツにアクセス
rank = country.find('rank').text

# 属性にアクセス
name = country.get('name')

# 子要素の生成
elem = ET.SubElement(root,'country', attrib={'name':'Liechtenstein'})

# 子要素の削除
for country in root.findall('country'):
    rank = int(country.find('rank').text)
    if rank > 50:
        root.remove(country)

以上がPythonのxml.etree.ElementTreeを使用したXMLの操作の基本的な方法です。これらの知識を活用して、PythonでXMLデータを効率的に扱うことができます。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です