ElementTree のページに書いてあることだけど、メモとして。 xml.etree.ElementTree.iterparse を使うと、DOM のようにメモリを食わず、SAX よりプログラムしやすいかと思いきや、試しに Wikipedia のダンプデータを食わしてみたら、がんがんメモりを食う。まぁ、ルートエレメントの end イベントのときに、配下のノードがすべて必要になるので当然なんだけど。で、対策は毎回ルートエレメントの配下をクリアするということらしい。 ということで、Wikipedia のデータを処理するときはこんな感じ。 import xml.etree import ElementTree WIKIPEDIA_NAMESPACE = 'http://www.mediawiki.org/xml/export-0.3/' class Page(object): __slots