gpt4 book ai didi

python - 如何获取lxml中元素的路径?

转载 作者:IT老高 更新时间:2023-10-28 22:10:02 25 4
gpt4 key购买 nike

我正在使用 python 中的 lxml 中的 XPath 在 HTML 文档中进行搜索。如何获得某个元素的路径?这是来自 ruby​​ nokogiri 的示例:

page.xpath('//text()').each do |textnode|
path = textnode.path
puts path
end

例如打印 '/html/body/div/div[1]/div[1]/p/text()[1]' 这是我想要输入的字符串 python 。

最佳答案

使用 getpath来自 ElementTree 对象。

from lxml import etree

root = etree.fromstring('''
<foo><bar>Data</bar><bar><baz>data</baz>
<baz>data</baz></bar></foo>
''')

tree = etree.ElementTree(root)
for e in root.iter():
print(tree.getpath(e))

打印

/foo
/foo/bar[1]
/foo/bar[2]
/foo/bar[2]/baz[1]
/foo/bar[2]/baz[2]

关于python - 如何获取lxml中元素的路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1577293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com