查找namesp中的所有元素

2024-10-01 17:38:31 发布

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

我有一个具有多个名称空间的xml。 我想迭代namespace='http://ns.example.com/xmto/'的元素

我使用的是python3.4和ElementTree

此代码显示元素1:

tree.findall("{http://ns.example.com/xpto/}element1")

我想找到具有此命名空间的所有元素。 比如:

^{pr2}$

有可能吗? 或者唯一的办法就是检查元素.tag在每一个元素上?在


Tags: 代码名称comtreehttp元素example空间
1条回答
网友
1楼 · 发布于 2024-10-01 17:38:31

如果要使用^{cd1>},可以使用XPath的namespace-uri()函数,类似于:

elements = tree.xpath('//*[namespace-uri() = "http://ns.example.com/xpto/"]')

不幸的是,^{{cd2>}中的XPath支持不支持^{cd3>}函数。可能其他人会加入一个与本机xml模块一起工作的解决方案,但我喜欢使用xpath支持^{cd4>}。

相关问题 更多 >

    热门问题