Python で XML を扱う方法いろいろ

Python には下記のように、標準の XML パーサが複数搭載されています。

  • xml.etree.ElementTree … The ElementTree XML API
  • xml.dom … The Document Object Model API
  • xml.dom.minidom … Minimal DOM implementation
  • xml.sax … Support for SAX2 parsers

通常はシンプルな xml.etree.ElementTree を使い、DOM 標準の API を使いたい場合は xml.dom を使用すればよいでしょう。 巨大な XML ファイルを効率的に読み込みたい場合は、SAX API を提供する xml.sax を選択できます。

Beautiful Soup などの 3rd パーティライブラリでも XML を扱うことはできますが、Beautiful Soup はどちらかというと HTML のパースに向いています。 XML のパースは、ほとんどの場合 Python 標準の ElementTree で十分です。