在Python中解析子标签XML

时间:2018-05-30 17:39:46

标签: python xml

我有这个XML:

<SwitchPort name="1110" portType="RS422_Board2">
<Bus>UO-2-3</Bus>
<Device>FC3</Device>
<Appearance>Simulated</Appearance>
</SwitchPort>

我可以使用:

获取portType
for node in NCFile.getElementsByTagName("SwitchPort"):
    portType = node.getAttribute("portType")

但我想获得Apperance,Device等的值

我做错了什么?

马特

2 个答案:

答案 0 :(得分:1)

只需在getElementsBytagName上使用node即可获得nodeValue

for node in NCFile.getElementsByTagName("SwitchPort"):
    portType = node.getAttribute("portType")
    device = node.getElementsByTagName("Device")[0].firstChild.nodeValue
    appearance = node.getElementsByTagName("Appearance")[0].firstChild.nodeValue

答案 1 :(得分:0)

您可以使用lxml解析xml - lxml

  

来自lxml import etree

     

root_element = etree.fromstring(xml_string)

     

device_node_value = root_element.findtext('Device')