Pythonはその豊富なライブラリと簡易な構文のおかげで、さまざまなデータ形式を扱うのに非常に適しています。その中にはXMLも含まれており、PythonはXMLデータを解析し、操作するための機能を提供しています。
例えばPythonには、xml.etree.ElementTree
や xml.dom.minidom
などの組み込みライブラリが存在します。これらにより、XMLデータを解析したり、新たにXMLデータを生成したりが可能です。
import xml.etree.ElementTree as ET
xml_data = """
<root>
<element1 attribute="value1">Text1</element1>
<element2 attribute="value2">Text2</element2>
<element3 attribute="value3">Text3</element3>
</root>
"""
root = ET.fromstring(xml_data)
for elem in root:
print(f"要素: {elem.tag}, 属性: {elem.attrib}, テキスト: {elem.text}")
このコードは、XMLデータをパースしてElementTreeオブジェクトを作成し、必要な要素の値を取得して表示します。
またXMLは、Web APIから返されるデータの形式として頻繁に使用されています。このため、Pythonを使ってこれらのAPIを利用する場合、XMLデータをパース(解析)して内容を抽出し、必要に応じてデータを操作できなければなりません。
import xml.etree.ElementTree as ET
# APIから返されたXMLデータ(仮のデータ)
xml_data = '''
<response>
<status>200</status>
<message>成功</message>
<data>
<user>
<name>アリス</name>
<age>25</age>
</user>
<user>
<name>ボブ</name>
<age>30</age>
</user>
</data>
</response>
'''
# XMLデータをパースしてElementTreeオブジェクトを作成
root = ET.fromstring(xml_data)
# 必要な要素の値を取得して表示
status = root.find('status').text
このコードは、APIから返されたXMLデータをパースし、必要な要素の値を取得して表示します。
以上がPythonでXMLをパースする基本的な方法です。さまざまなシチュエーションでPythonとXMLを活用してみてください。