在使用python的minidom解析xml文件时,遇到一个问题,当使用parseString格式解析数据时,例如字符串
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <books> <book> <name>macken</name> <author>tan</author> </book> <book> <name>macken</name> <author>tan</author> </book> </books>
会将book下的name、author节点识别为元素节点,因为无法像文本节点直接用node.data或node.nodeValue获取里面的文本值,可以使用node.firstChild.data获取内部的文本值;
代码示例:
#!/usr/bin/env python
# -*- coding: GBK -*-
import urllib2
from xml.dom import minidom
url="http://localhost:82/v1/game/"
header = {'Accept':'application/xml'}
request = urllib2.Request(url, headers=header)
response = urllib2.urlopen(request)
data = response.read()
dom=minidom.parseString(data)
for node in dom.childNodes:
for model in node.childNodes:
for x in model.childNodes:
print x.firstChild.data