How to find recursively for a tag of XML using LXML?(如何使用 LXML 递归查找 XML 标记?)
本文介绍了如何使用 LXML 递归查找 XML 标记?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
<?xml version="1.0" ?>
<data>
<test >
<f1 />
</test >
<test2 >
<test3>
<f1 />
</test3>
</test2>
<f1 />
</data>
使用 lxml 是否可以递归地找到标签"f1 "?我尝试了 findall 方法,但它只适用于直系子女.
Using lxml is it possible to find recursively for tag " f1 "? I tried findall method but it works only for immediate children.
我想我应该为此选择 BeautifulSoup !!!
I think I should go for BeautifulSoup for this !!!
推荐答案
可以使用XPath递归搜索:
You can use XPath to search recursively:
>>> from lxml import etree
>>> q = etree.fromstring('<xml><hello>a</hello><x><hello>b</hello></x></xml>')
>>> q.findall('hello') # Tag name, first level only.
[<Element hello at 414a7c8>]
>>> q.findall('.//hello') # XPath, recursive.
[<Element hello at 414a7c8>, <Element hello at 414a818>]
这篇关于如何使用 LXML 递归查找 XML 标记?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:如何使用 LXML 递归查找 XML 标记?


基础教程推荐
猜你喜欢
- 对多索引数据帧的列进行排序 2022-01-01
- 比较两个文本文件以找出差异并将它们输出到新的文本文件 2022-01-01
- 究竟什么是“容器"?在蟒蛇?(以及所有的 python 容器类型是什么?) 2022-01-01
- Kivy 使用 opencv.调整图像大小 2022-01-01
- 在 Python 中将货币解析为数字 2022-01-01
- Python,确定字符串是否应转换为 Int 或 Float 2022-01-01
- matplotlib 设置 yaxis 标签大小 2022-01-01
- Python 中是否有任何支持将长字符串转储为块文字或折叠块的 yaml 库? 2022-01-01
- kivy 应用程序中的一个简单网页作为小部件 2022-01-01
- 在 Django Admin 中使用内联 OneToOneField 2022-01-01