用python打印xml元素值

2024-09-26 18:07:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用rpc调用测试pyez以获得mac表,到目前为止,我能够提取数据,但是当我打印这个数据时,没有´它只显示内存地址

在我的代码下面:

dev = Device( user='labroot', host='X.X.X.X', password='*****')

dev.open()

Device(X.X.X.X)

macs = dev.rpc.get_vpls_mac_table()

dev.close()

test = macs.findall('l2ald-mac-entry/l2-mac-entry/l2-mac-address')

print(test)

这张照片显示了以下内容:

for x in test:
...     print(x)
...
<Element l2-mac-address at 0x7fc606f66d88>
<Element l2-mac-address at 0x7fc606f66f38>
<Element l2-mac-address at 0x7fc606f66cb0>
<Element l2-mac-address at 0x7fc606f66f80>
<Element l2-mac-address at 0x7fc606f66b00>
<Element l2-mac-address at 0x7fc606f6f050>
<Element l2-mac-address at 0x7fc606f6f0e0>

内容¨苹果电脑¨ 是这样的:

<l2ald-rtb-macdb>
<l2ald-mac-entry style="brief-rtb">
<l2-mac-routing-instance>VPLS</l2-mac-routing-instance>
<l2-mac-bridging-domain>__VPLS__</l2-mac-bridging-domain>
<l2-bridge-vlan>none</l2-bridge-vlan>
<l2-mac-entry>
  <l2-mac-address>be:01:01:01:01:01</l2-mac-address>
  <l2-mac-flags>D</l2-mac-flags>
  <l2-mac-logical-interface>lsi.1049332</l2-mac-logical-interface>

我要打印的是l2 mac条目层次结构下的mac地址,在本例中是value¨be:01:01:01:01:01¨.

希望你能帮忙


Tags: 数据devtestaddressdevicemacelementrpc
1条回答
网友
1楼 · 发布于 2024-09-26 18:07:33

使用XPath进行XML解析很方便。 您可以尝试以下操作:

import xml.etree.ElementTree as ET

for x in test:
    el = ET.fromstring(x)
    mac = el.find(".//*l2-mac-address").text
    print(mac)

返回“be:01:01:01:01:01”作为数据示例

相关问题 更多 >

    热门问题