python解析xml文件如何读取所有<br />标签的内容?
问题可能描述得简单了点,我的xml文本有很多的br标签,我想获取br标签后的内容。<claim-text>1.一种与电子显示器通信并且用于控制淋浴出口的系统,所述系统<b...
问题可能描述得简单了点,我的xml文本有很多的br标签,我想获取br标签后的内容。
<claim-text>1.一种与电子显示器通信并且用于控制淋浴出口的系统,所述系统
<br />包括:
<br />下游的设备或控制器传播请求以及向与淋浴出口组相关的阀或阀控制器
<br />提供控制信号中的至少一个。
<br />扭、选择器开关等等。这些机械性的用户界面
<br />下游的设备或控制器传播请求以及向与淋浴出口组相关的阀或阀控制器
<br />提供控制信号中的至少一个。
<br /></claim-text>
用你的方法想写个循环获取所有的内容:
from xml.dom import minidom
doc = minidom.parse("201410447057NEW.xml")
root = doc.documentElement
claimtext = root.getElementsByTagName("claim-text")
br = claimtext[0].getElementsByTagName("br")
for i in range(0,len(br)):
print claimtext[0].childNodes[i+2].nodeValue
但是在print语句报了个错:TypeError: coercing to Unicode: need string or buffer, NoneType found
claimtext[0].childNodes[i+2].nodeValue 如果下标不用i直接用数字不会报错
大神你有什么办法能解决么?或者有其他更方便的方法获取所有br标签后的内容?求教。万分感谢。 展开
<claim-text>1.一种与电子显示器通信并且用于控制淋浴出口的系统,所述系统
<br />包括:
<br />下游的设备或控制器传播请求以及向与淋浴出口组相关的阀或阀控制器
<br />提供控制信号中的至少一个。
<br />扭、选择器开关等等。这些机械性的用户界面
<br />下游的设备或控制器传播请求以及向与淋浴出口组相关的阀或阀控制器
<br />提供控制信号中的至少一个。
<br /></claim-text>
用你的方法想写个循环获取所有的内容:
from xml.dom import minidom
doc = minidom.parse("201410447057NEW.xml")
root = doc.documentElement
claimtext = root.getElementsByTagName("claim-text")
br = claimtext[0].getElementsByTagName("br")
for i in range(0,len(br)):
print claimtext[0].childNodes[i+2].nodeValue
但是在print语句报了个错:TypeError: coercing to Unicode: need string or buffer, NoneType found
claimtext[0].childNodes[i+2].nodeValue 如果下标不用i直接用数字不会报错
大神你有什么办法能解决么?或者有其他更方便的方法获取所有br标签后的内容?求教。万分感谢。 展开
1个回答
展开全部
claimtext = root.getElementsByTagName("claim-text")
for i in claimtext[0].childNodes:
print i.nodeName #你自己看哈 这里的 i.nodeName 有俩个类型 br #text ,所以取的时候加个类型判断吧
if i.nodeName == '#text':
print i.nodeValue
这玩意这么不好使 要不是 试试 beautifulsoup 这个html 解析标签 效果应该 嘎嘎的
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询