我得到这样的类别
a[contains(@class,'category')])[*]
我尝试使用此方法来获取子类别,但是我无法获得第二部分。
((a[@class='category'])[2]//following-sibling::a[@class='sub_category'][following-sibling::a[@class='category')]])[*]
我如何获得第二部分?
<div class="categories">
<a class="category" href="#">A</a>
<a class="sub_category" href="#">B</a>
<a class="sub_category" href="#">BB</a>
<a class="sub_category" href="#">BBB</a>
<a class="category" href="#">AA</a>
<a class="sub_category" href="#">B</a>
<a class="sub_category" href="#">BB</a>
<a class="sub_category" href="#">BBB</a>
<a class="sub_category" href="#">BBBB</a>
<a class="sub_category" href="#">ВBBBB</a>
<a class="sub_category" href="#">ВBBBBB</a>
<a class="sub_category" href="#">ВBBBBBB</a>
<a class="sub_category" href="#">ВBBBBBBB</a>
</div>
答案 0 :(得分:0)
这将使您获得所有在第二类别后等于'sub_category'的a'
//a[@class='category'][2]/following-sibling::a[@class='sub_category']
还要记住,它将包括所有“ sub_category” a 例如
<div class="categories">
<a class="category" href="#">A</a>
<a class="sub_category" href="#">B</a>
<a class="sub_category" href="#">BB</a>
<a class="sub_category" href="#">BBB</a>
<a class="category" href="#">AA</a>
<a class="sub_category" href="#">B</a>
<a class="sub_category" href="#">BB</a>
<a class="sub_category" href="#">BBB</a>
<a class="sub_category" href="#">BBBB</a>
<a class="sub_category" href="#">ВBBBB</a>
<a class="sub_category" href="#">ВBBBBB</a>
<a class="sub_category" href="#">ВBBBBBB</a>
<a class="sub_category" href="#">ВBBBBBBB</a>
<a class="category" href="#">AAA</a>
<a class="sub_category" href="#">B</a>
<a class="sub_category" href="#">BB</a>
<a class="sub_category" href="#">BBB</a>
</div>
上面的xpath还将包括AAA类别下的a
如果您只需要提取选定的a,则可以执行以下操作:
//a[@class='category' and text()='AA']/following-sibling::a[@class='sub_category'][position()<8]