Scrapy css选择器:获取所有内部标签的文本

时间:2016-12-05 23:12:31

标签: html css scrapy

我有一个标签,我希望所有文本都可用。我这样做:

response.css('mytag::text')

但它只获取当前标记的文本,我还想从所有内部标记中获取文本。

我知道我可以这样做:

response.xpath('//mytag//text()')

但我想用css选择器来做。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:30)

response.css('mytag *::text')

*将访问mytag的所有内部标记,::text将获取每个内容的文本

答案 1 :(得分:4)

仅获取所选节点的文本。

response.css('mytag::text')

获取所选节点及其子节点的文本。

response.css('mytag ::text')

查看这两个版本之间的区别。唯一的区别是空间。如果没有空间,则仅返回当前节点的文本/属性。如果有空格,则选择自身和子节点的文本/属性

response.css('h1 a::attr(href)') # only current node attribute

response.css('h1 ::attr(href)') # current node and all child nodes attribute.