从 XML 格式的输出中提取值

Extracting values from XML formatted output

我正在尝试从如下所示的输出中获取 IP 地址值:

<sc-list>
    <sc address="10.13.11.103"/>
    <sc address="10.13.11.107"/>
</sc-list>

我尝试使用 etree,但我似乎无法获取 ip 值(请参阅下面的代码)

import xml.etree.ElementTree as ET

filepath = "C:\Development\pq-python-examples\ip_numbers.xml"
tree = ET.parse(filepath)
root = tree.getroot()

for child in root:
    print (child.tag, child.attrib)

我得到的输出如下所示:

('sc', {'address': '10.13.11.103'})

('sc', {'address': '10.13.11.107'})

谁能帮我得到 ip 地址?

10.13.11.103

10.13.11.107

谢谢。

.attrib 属性 returns 一个属性字典,这意味着你可以使用 child.attrib.get('address') 来获取IP地址。

这是获取地址的安全方法,因为如果 child 没有 address,您的程序不会崩溃。