# -*- coding: utf-8 -*- import xml.parsers.expat def start_element(name, attrs): print 'Start element:', name, attrs def end_element(name): print 'End element:', name def char_data(data): print 'Character data:', repr(data) p = xml.parsers.expat.ParserCreate() p.StartElementHandler = start_element p.EndElementHandler = end_element p.CharacterDataHandler = char_data p.Parse('<?xml version="1.0"?>\ <parent id="top">\ <child1 name="paul">Text goes here</child1>\ <child2 name="fred">More text</child2>\ </parent>') # ファイルを解析する場合 # with open("file.xml") as f: # p.ParseFile(f)
実行すると
Start element: parent {u'id': u'top'} Start element: child1 {u'name': u'paul'} Character data: u'Text goes here' End element: child1 Start element: child2 {u'name': u'fred'} Character data: u'More text' End element: child2 End element: parent
詳細はドキュメントで
XMLに日本語が含まれている場合、p.Parseするとバケてしまいます。
返信削除どうすればよいのでしょうか?