tree.xpath("/exact/path/to/element")
会产生[<Element I want>]
。
exact/path/to/element
是通过致电tree.getroottree().getpath(element)
来获得的。
如果我找到元素的最小xpath,例如萤火虫,tree.xpath("//@minimal-descriptor")
产生[<Element I want>]
。
问题
如何使用lxml或其他Python库从element
获取 minimal xpath?
答案 0 :(得分:1)
不可能使lxml生成除the "absolute" one之外的任何xpath表达式,这一点最重要,因为可能有大量的xpath表达式指向一个元素。
此处还提出了几个要点:
据我所知firebug
documentation和相关的"Split current option "Copy XPath" into two options for copying the absolute and relative XPath" issue,“复制最小XPath”功能仅适用于id
属性集的元素:
复制最小XPath - 带ID的节点 - 复制最小版本 XPath到当前节点到剪贴板