scrapy和xpath:如果父元素包含文本,则在子元素中获取文本

时间:2018-12-29 11:09:20

标签: xpath scrapy

如果父元素包含带有特定字符串的文本,如何获取子元素的文本?

例如:

<li>
    "string1"
    <span>
        "Hello"
    </span>
</li>
<li>
    "string2"
    <span>
        "Ola"
    </span>
</li>

从上面的html代码中,如何使用xpath仅获取字符串“ Ola”?

1 个答案:

答案 0 :(得分:1)

在不知不觉中,我会尝试

//li[text()[contains(.,"string2")]]/span/text()
  • //li[text()[contains(.,"string2")]]选择文本包含li的{​​{1}}元素
  • string2在所选/span下选择元素span
  • li:返回所选跨度元素的文本

更新:这比较简单,也应该可以:

/text()