python3读取xml字符串

 1 import xml.sax
 2 import xml.sax.handler
 3 import pprint
 4 
 5 
 6 class XMLHandler(xml.sax.handler.ContentHandler):
 7     def __init__(self):
 8         self.buffer = ""
 9         self.mapping = {}
10 
11     def startElement(self, name, attributes):
12         self.buffer = ""
13 
14     def characters(self, data):
15         self.buffer += data
16 
17     def endElement(self, name):
18         self.mapping[name] = self.buffer
19 
20     def getDict(self):
21         return self.mapping
22 
23 
24 data = '<?xml version="1.0" encoding="UTF-8"?><note><to>World</to><from>Linvo</from><heading>Hi</heading><body>Hello World!</body></note>'
25 
26 xh = XMLHandler()
27 xml.sax.parseString(data.encode(), xh)
28 ret = xh.getDict()
29 
30 pprint.pprint(ret)

 

posted on 2018-07-19 10:01  sammy1989  阅读(7540)  评论(0编辑  收藏  举报

导航