【发布时间】:2019-07-28 18:15:19
【问题描述】:
当使用 find 函数时,总是不返回任何内容
我尝试了不同类型的标签,但始终没有返回。
这是我得到的 XML 响应
<?xml version="1.0" encoding="UTF-8"?>
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="urn:uuid:62b25025-051e-4cd7-ad9f-ab0d5e21b634">
<data>
<native xmlns="http://cisco.com/ns/yang/Cisco-IOS-XE-native">
<interface>
<GigabitEthernet>
<name>1</name>
<ip>
<address>
<dhcp />
</address>
</ip>
<mop>
<enabled>false</enabled>
<sysid>false</sysid>
</mop>
<negotiation xmlns="http://cisco.com/ns/yang/Cisco-IOS-XE-ethernet">
<auto>true</auto>
</negotiation>
</GigabitEthernet>
</interface>
</native>
</data>
</rpc-reply>
这是我使用的查找语句。
address = get_reply.data.find('{http://cisco.com/ns/yang/Cisco-IOS-XE-ethernet}interface')
我希望得到标签。
提前致谢:)
【问题讨论】:
-
你想得到什么“标签”?
interface条目中还有一些其他信息。 -
这是 Python 标准库 ElementTree 吗? (哪个版本?) lxml 实现?我想确定我正在测试您所询问的相同版本。使您的 minimal reproducible example 包含
import行和实际的解析操作(可能将 XML 作为常量字符串移动到代码中,以使代码复制到粘贴到测试)可以帮助回答其中一些问题,顺便说一句。 -
@MigB id 喜欢获取
标签,查看ip信息。谢谢 -
@CharlesDuffy 我正在使用 lxml==4.2.5。
标签: python xml elementtree