我从网页中提取了所有非空文本,并使用以下方法将每段文本存储在列表中:
text = response.xpath('//text()[normalize-space()]').extract()
现在我想检查H1标签之间的哪一段文字。给定一段文本,是否可以使用xpath?
获取围绕它的直接父标记我正在Scrapy框架之上。
答案 0 :(得分:1)
根据文档,你得到的是纯字符串列表,所以我假设它们不存储对它们从中提取的树的任何引用:
extract()
序列化并返回匹配的节点作为unicode字符串列表。编码内容百分比不加引号。
https://doc.scrapy.org/en/latest/topics/selectors.html#scrapy.selector.Selector.extract
似乎如果只需要<h1>
包围的文本,则必须在xpath选择器中指定它并使用它进行查询。