You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Scrapy:如何用CSS选择器跳过指定span获取目标文本

解决方案:精准选中目标span文本

你的目标HTML结构如下:

<div class="classA">
   <span class="classB">hello</span>
   <span aria-hidden="true">world</span>
   <span>I want this text</span>
</div>

当前使用的选择器会同时选中第二个和第三个span,要跳过带aria-hidden="true"的元素,有几种可行方案:

  • 组合多重排除条件:在原有:not选择器基础上,再添加一个排除带aria-hidden="true"属性的条件,就能精准定位到第三个span:

    response.css('div.classA > span:not([class^="classB"]):not([aria-hidden="true"])').get()
    
  • 利用子元素位置选择:如果HTML结构固定,第三个span始终是父元素下的第三个子元素,直接用:nth-child(3)选择器更简单:

    response.css('div.classA > span:nth-child(3)').get()
    
  • 选中最后一个子元素:如果目标span始终是父元素下的最后一个span,也可以用:last-child:

    response.css('div.classA > span:last-child').get()
    

内容的提问来源于stack exchange,提问作者Soffamumie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 23:45:38