Python Scrapy使用CSS选择器提取BHK相关文本的实现方法咨询
Scrapy BHK文本提取调整方案
你现有代码直接提取.NpsrpTuple__subHead类对应的<tr>标签的完整HTML内容,所以返回的是整段标签源码,而非你需要的BHK文本。目标文本实际存储在<tr>下第一个<td>子节点的文本内容中。
基础实现(直接提取目标文本)
使用::text伪元素选择器定位到目标td节点的文本内容即可,Scrapy提取文本时会自动过滤掉<!-- -->这类HTML注释:
bhk = response.css('.NpsrpTuple__subHead td:first-child::text').getall()
如果使用的是旧版本Scrapy,也可以用extract()替换getall():
bhk = response.css('.NpsrpTuple__subHead td:first-child::text').extract()
优化实现(清理空白字符)
如果提取的文本前后存在多余空格/换行,可以通过列表推导式批量清理:
bhk = [item.strip() for item in response.css('.NpsrpTuple__subHead td:first-child::text').getall()]
内容的提问来源于stack exchange,提问作者Learner
相关产品推荐
相关产品推荐

