使用带有Scrapy的CSS选择器获取href
我想获得href
价值:
<span class="title">
<a href="https://www.example.com"></a>
</span>
我尝试了这个:
Link = Link1.css('span[class=title] a::text').extract()[0]
但是我只是把文本放在<a>
。我怎样才能获得链接href
?
-
您正在寻找的是:
Link = Link1.css('span[class=title] a::attr(href)').extract()[0]
由于您还匹配了
span
“ class”属性,因此您甚至可以编写Link = Link1.css('span.title a::attr(href)').extract()[0]
请注意,
::text
伪元素和::attr(attributename)
功能伪元素 不是 标准的CSS3选择器。它们是Scrapy
0.20中CSS选择器的扩展。
编辑(2017-07-20):从Scrapy 1.0开始,您可以使用
.extract_first()
代替.extract()[0]
Link = Link1.css('span[class=title] a::attr(href)').extract_first() Link = Link1.css('span.title a::attr(href)').extract_first()