Pythonのxml.etree.ElementTree
モジュールは、XMLデータを解析し、そのデータを操作するための強力なツールです。このモジュールには、findall
というメソッドがあり、これを使うと、特定のタグを持つ要素をすべて見つけることができます。
以下に、findall
メソッドの基本的な使用方法を示します。
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
# タグで現在の要素の直接の子要素のみ検索
list = root.findall('country')
上記のコードでは、country_data.xml
というXMLファイルを解析し、ルート要素を取得しています。その後、findall
メソッドを使用して、ルート要素の直接の子要素でタグが’country’のものをすべて見つけ、それらをリストに格納しています。
また、XPath式を使ってより複雑な検索を行うことも可能です。以下に例を示します。
# XPath式で検索
elements = root.findall("./country/neighbor")
このコードでは、findall
メソッドにXPath式を渡しています。この式は、ルート要素の下の’country’タグを持つ要素の中で、さらに’neighbor’タグを持つ要素をすべて見つけることを意味しています。
以上が、Pythonのxml.etree.ElementTree
モジュールのfindall
メソッドの基本的な使用方法となります。このメソッドを使うと、XMLデータから必要な情報を効率的に抽出することができます。