是否有可能制作一个XPath查询来提取某些(html)元素,如果它的子元素有一些文本,以防嵌套级别未知?
例如,要从中提取的html:
<a href="/dialog/id/7">
<div class="someclass_1">... random text</div>
<div class="someclass_2">Text_need_to_find</div>
<div class="subclass_1">
Text_need_to_find
<div class="subclass_2">... random text</div>
<div class="subclass_3>
Text_need_to_find
</div>
</div>
</a>
如果任何元素或子元素包含文本href
,则需要XPath获取Text_need_to_find
属性。
所以基本上我想得到/dialog/id/7
如果在任何元素中,孩子都有文字Text_need_to_find
答案 0 :(得分:4)
应该是这样的:
a[descendant-or-self::*[normalize-space() = 'Text_need_to_find']]/@href
如果“Text_need_to_find”只是内容使用contains(., 'Text_need_to_find')
的一部分。