0

我有以下 HTML:

<ul>
<li>
<p class="channel-show-time">Test 1</p>
</li>
<li>
<p class="channel-show-time">Test 2</p>
</li>
<li><span class="channel-show-carousel-label">Next</span>
<p class="channel-show-time">Test 3</p>
</li>
<li>
<p class="channel-show-time">Test 4</p>
</li>
</ul>

我想选择<p>标签中的文本,从前面的 li 到跨度类为“channel-show-carousel-label”的 li,所以我想要文本“Test 2”。

我有 xpath 选择<p>标签中的文本 li 与 span 类,即:

xpath=//ul/li/span[@class='channel-show-carousel-label']/../p

有谁知道我怎么能做到这一点?

4

1 回答 1

2

您可以使用以下 XPath:

//span[@class="channel-show-carousel-label"]/../preceding-sibling::li[1]/p/text()

它说:找到具有所需类的跨度,转到其父级 (li),找到最近的 li 同级,转到其 p 子级并返回其文本。

于 2012-07-30T17:54:40.810 回答