当前位置: 首页 > 面试题库 >

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

邓声
2023-03-14
问题内容

我正在使用XPath从python中的lxml中搜索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]


 类似资料:
  • 问题内容: 我有一个包含以下内容: 现在我所知道的只是对象名称(统计信息), 不知道 它是 元素编号 还是它的 元素名称 ,因此,有一种方法可以解析该对象,以便我可以获取它的元素并进行处理(例如,约翰罗斯)? 问题答案: 为了以动态方式获取这些项目:

  • 问题内容: 我得到了此功能来获取cssPath: 但是我有这样的事情: 但是完全正确的是,它看起来应该像这样: 有人有任何想法简单地用javascript实现吗? 问题答案: 为了始终获得正确的元素,您将需要使用或来选择不能唯一标识元素的选择器。所以试试这个: 你可以添加一个例行检查在其对应的背景下独特的元素(如,,,等)。

  • 本文向大家介绍Python lxml解析HTML并用xpath获取元素的方法,包括了Python lxml解析HTML并用xpath获取元素的方法的使用技巧和注意事项,需要的朋友参考一下 代码 使用方法见注释 以上这篇Python lxml解析HTML并用xpath获取元素的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 问题内容: 例如,如果我有一个元素: 这是跨多行的: 是否可以使用Javascript找出文本中特定字符的位置(以x,y坐标表示)?如果没有,我可以得到文本中每行的y位置吗? 请注意 :我的应用程序中的标记中有很多文本,因此在每个字符/单词周围添加太多的处理内容。 问题答案: 如果您知道字符在文本中的字符串位置,则可以将字符包装在具有ID的或类似元素中,并找到该元素的x,y坐标。要做到这一点最简单

  • 问题内容: 我正在Python中使用Selenium。我想获取一个元素的,并检查它是否是我所期望的。 这是我的代码: 我怎样才能做到这一点?Selenium文档似乎有很多关于选择元素的内容,但是与属性无关。 问题答案: 您可能正在寻找。一个例子示此处以及

  • 问题内容: 我正在通过其ID查找文本框。我需要获取文本框中已经存在的内容。为此,我正在使用方法,但它返回ID值 文本框中的内容是:Santhosh 我得到的输出是= 代码如下 码: 结果: 问题答案: 您需要打印的结果,当前正在打印对象。 只会获取元素的内部文本。要获取值,您需要使用。