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

如何使用Scrapy的CSS选择器提取带指定多类名的a标签的href属性

解决方案

错误根因

你使用的CSS选择器中两个类名之间存在空格,CSS语法中空格代表后代选择器,会被解析为查找a.AirQuality--detailsButton--DBdLS节点下名为Button--primary--1UQTP的子标签,完全不符合你的匹配需求,因此返回空结果。

正确匹配代码

同时匹配多个类名的正确写法是所有类名前加.且中间无空格:

response.css('a.AirQuality--detailsButton--DBdLS.Button--primary--1UQTP::attr(href)').get()

高容错性可选写法

如果担心页面后续更新类名后缀变动,也可以用属性包含匹配的写法,只匹配固定前缀的类名即可:

response.css('a[class*="AirQuality--detailsButton"]::attr(href)').get()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 23:06:03