Scrapy xpath 语法

Scrapy xpath syntax

如何使用 xpath 获取嵌套在以下 div 中的段落的文本,但在 Reference 之前停止?谢谢!

我在第一段尝试了 SELECTOR = '//div/text() = "entry-content"/p[1]/text() ,但没有成功。

<div class="entry-content"> == 0
   <div id="dpsp-content-top">...</div>
   <span id="xxx">...</span>
   <h5>...</h5>
   <p>...</p>
   <p>...</p>
   <p>...</p>
   <h5>Reference</h5>
   <p>...</p>
   <p>...</p>
</div>

这应该 return "Reference"

之前的所有 "P" 个元素
//div[@class='entry-content']//h5/strong[contains(text(),'Reference')]/preceding-sibling::p

如果您需要来自 "p" 元素的文本,试试这个,

//div[@class='entry-content']//h5/strong[contains(text(),'Reference')]/preceding-sibling::p/text()

我认为 xpath 应该像

response.xpath('//div[@class='entry-content']/p[1]/text()').extract()

因为 <p> 在第一个 <div> 里面