Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html Xpath获取两个元素之间的元素,我们可以';t使用id或文本识别第二个标签_Html_Xpath_Boolean Logic - Fatal编程技术网

Html Xpath获取两个元素之间的元素,我们可以';t使用id或文本识别第二个标签

Html Xpath获取两个元素之间的元素,我们可以';t使用id或文本识别第二个标签,html,xpath,boolean-logic,Html,Xpath,Boolean Logic,我有一个与这个问题类似的问题。但是在我的特定情况下,html可以变化,我不能使用第二个元素的文本 基本上我的结构如下: <h1>Account Information</h1> <a class="null" href="http:...">Remarks</a> <a class="null" href="http:...">Owner Information</a> <b>Account Detail<

我有一个与这个问题类似的问题。但是在我的特定情况下,html可以变化,我不能使用第二个元素的文本

基本上我的结构如下:

<h1>Account Information</h1>
<a class="null" href="http:...">Remarks</a>
<a class="null" href="http:...">Owner Information</a>
<b>Account Detail</b>
<a class="null" href="http:...">Industrial</a>

<a class="null" href="http:...">land</a>
<b >Transfers</b>
<a class="null" href="http:...">11111</a>
<a class="null" href="http:...">22222</a>
对于这种情况,由于在b='Account Detail'之后只有一个b,因此可以正常工作 我得到

[工业、土地]

但是如果在b='Account Detail'之后有多个

但是如果我们有多个

账户信息
账户明细
许可证
转移
结果是:

[工业、土地,12-12-222,22-2-22]

这不是期望的行为

有什么建议吗?
提前感谢

请尝试下面的XPath以获取所需的节点:

//a[preceding-sibling::b[1]='Account Detail' and following-sibling::b]

previous sibling::b[1]=“Account Detail”
打算在包含
“Account Detail”
内容的锚之前获取没有前辈的锚
,好的,这里的b[1]或b有什么区别?
b[1]='Account Detail'
意味着前面的第一个同级
b
节点具有内容
'Account Detail'
,因此在这种情况下,例如,
12-12-222
将不会与前面的第一个同级
b
匹配,因为该锚具有内容
“允许”
。它实际上可以简化为
//a[前面的兄弟姐妹::b[1]=“帐户详细信息”]
<h1>Account Information</h1>
<a class="null" href="http:...">Remarks</a>
<a class="null" href="http:...">Owner Information</a>
<b>Account Detail</b>
<a class="null" href="http:...">Industrial</a>    
<a class="null" href="http:...">land</a>
<b class="">Permits</b>
 <a class="null" href="http:...">12-12-222</a>
 <a class="null" href="http:...">22-2-22</a>
<b >Transfers</b>
<a class="null" href="http:...">11111</a>
<a class="null" href="http:...">22222</a>
//a[preceding-sibling::b[1]='Account Detail' and following-sibling::b]