【发布时间】:2017-04-20 11:36:54
【问题描述】:
我有一个标签,我想获取里面的所有文本。我正在这样做:
response.css('mytag::text')
但它只是获取当前标签的文本,我还想从所有内部标签中获取文本。
我知道我可以这样做:
response.xpath('//mytag//text()')
但我想用css 选择器来做。我怎样才能做到这一点?
【问题讨论】:
我有一个标签,我想获取里面的所有文本。我正在这样做:
response.css('mytag::text')
但它只是获取当前标签的文本,我还想从所有内部标签中获取文本。
我知道我可以这样做:
response.xpath('//mytag//text()')
但我想用css 选择器来做。我怎样才能做到这一点?
【问题讨论】:
response.css('mytag *::text')
* 将访问mytag 的所有内部标签,::text 将获取每个标签的文本
【讨论】:
获取仅选定节点的文本。
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.
【讨论】: