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

Scrapy如何提取带有多属性的指定class的h1标签文本内容

问题核心误区澄清

h1 标签上的 itemprop、rel 属性完全不会影响文本提取,XPath 提取标签内部文本的逻辑和标签携带的属性数量、属性位置没有任何关联,你已经完成了元素匹配的步骤,只缺少文本提取的语法部分。

正确提取代码

在你原有 XPath 路径后追加 /text() 表示提取标签内部文本,再调用 get() 方法取第一个匹配结果即可:

response.xpath('//*[contains(@class,"entry-title")]/text()').get()

执行后会直接返回目标结果 Target Text Here。

优化可选写法

如果要避免其他类型标签也携带 entry-title 类导致误匹配,可以限定只匹配 h1 标签,精准度更高:

response.xpath('//h1[contains(@class,"entry-title")]/text()').get()

如果需要获取所有匹配到的标题文本,替换为 getall() 方法即可,会返回所有结果组成的列表:

response.xpath('//*[contains(@class,"entry-title")]/text()').getall()

报错原因说明

你之前在 scrapy shell 中触发中止,是因为直接对返回的 Selector 列表对象尝试提取文本,没有调用正确的取值方法导致的。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 04:36:07