使用css选择器提取与特定类的链接

时间:2018-01-25 17:39:53

标签: python html css scrapy

我有以下HTML结构
我想用类:dev-link

提取所有链接
<a class="dev-link" href="mailto:info@jourist.com" rel="nofollow" title='Photoshoot"</a> 

我使用以下代码来提取scrapy中的链接

response.css('.dev-link::attr(href)').extract()

我得到了正确的输出,但这是使用css选择器的正确方法吗?

1 个答案:

答案 0 :(得分:1)

正如您在Scrapy Documentation中看到的,有两种方法可以废弃数据, CSS Selector XPath Selector 都可以正常工作,但XPath需要一些练习得到专家,在我看来,Xpath在特殊情况下更有力量你可以更容易地废弃数据选择器(当然你也可以用CSS选择器来获取它们),

你所做的是正确的

 link = response.css('.dev-link::attr(href)').extract_first()

也可以通过以下方式获得

link = response.xpath('/[contains(@class,’dev-link’)]/@href').extract_first()