第6小节我们介绍过选择器,但只是大概描述了下如何使用,本小节来专门聊聊选择器。
前面说了,Scrapy提供两种选择器CSS和XPath,而严格意义上来说,CSS和XPath不能叫选择器,但是在Scrapy中,使用了CSS和XPath来定位html元素,所以在Scrapy中管他们叫选择器。现在我们抛开Scrapy中的概念,来单独看看选择器。
什么是选择器
那首先要说明下,这里说的选择器呢,是web前端开发中CSS的选择器。还有一种常说的选择器是电子电路中的数据选择器,数据选择器是一种组合逻辑电路,其作用是根据给定的输入地址代码,从一组输入信号中选出指定的一个送至输出端的组合逻辑电路。这个选择器,不在本文讨论的范围内。
我们这里说的是前端开发中CSS的选择器,对于技术人员,尤其是前端开发人员,对CSS再熟悉不过了,CSS指的是层叠样式表(Cascading Style Sheets),用来定义HTML元素如何显示的,那么CSS是如何找到HTML元素的呢?就是通过选择器来实现查找HTML元素的。
选择器的种类
CSS中提供三种选择器类型:标签名选择器、类选择器和ID选择器。可能有的人会说,CSS还有子选择器、后台选择器、通配符选择器、属性选择器、伪类选择器等等,没有错,这些确实存在,但自己了解下就能看出这些选择器是上面三种选择器的扩展应用。
要想了解这三种选择器,我们需要先了解下HTML由什么组成,看下面的例子。
<div class="mydiv"