bb2*_*bb2 0 python elementtree
我已经搜索了一段时间。有没有一种方法可以根据标签的文本值直接检索子级?
例如:
<a>
<b>
<c>h</c>
</b>
<b>
<c>j</c>
</b>
</a>
Run Code Online (Sandbox Code Playgroud)
并说我想检索其“ c”文本值为== j的孩子。除了必须获取所有“ b”子代并遍历它们并检查c值之外,还有其他方法吗?
如果使用lxml,则可以使用XPath表达式//c[text()='j']
import lxml.etree as et
doc = '''
<a>
<b>
<c>h</c>
</b>
<b>
<c>j</c>
</b>
</a>
'''
tree = et.fromstring(doc)
tree.xpath("/a/b/c[text()='j']")
Run Code Online (Sandbox Code Playgroud)
这个答案是相关的:如何匹配XPath(lxml)中元素的内容?
| 归档时间: |
|
| 查看次数: |
1596 次 |
| 最近记录: |