PythonでXMLをパースし、特定の属性を持つタグを見つける方法について説明します。
ElementTreeを使用した方法
Pythonのxml.etree.ElementTree
モジュールを使用してXMLをパースし、特定の属性を持つタグを見つけることができます。
以下に一例を示します。
import xml.etree.ElementTree as ET
# XMLファイルをパース
tree = ET.parse('file.xml')
root = tree.getroot()
# 特定の属性を持つタグを見つける
for elem in root.iter():
if 'key' in elem.attrib:
print(elem.attrib['key'])
このコードは、XMLファイルをパースし、すべてのタグを反復処理して、’key’という名前の属性を持つタグを見つけます。
lxmlを使用した方法
xml.etree.ElementTree
はXPath式のサポートが限定的なため、より高度なXPathサポートが必要な場合は、lxml
ライブラリを使用することを検討してみてください。
from lxml import etree
tree = etree.parse('file.xml')
root = tree.getroot()
# 特定の属性を持つタグを見つける
list = root.xpath("//country[contains(@name,'Pana')]")
このコードは、XMLファイルをパースし、’name’属性が’Pana’を含むすべての’country’タグを見つけます。
以上がPythonでXMLの特定のタグを探す方法になります。適切なライブラリを選択し、必要に応じて使用してみてください。