Scrapy 中常用的数据提取方式有三种:Css 选择器、XPath、正则表达式。
Css 选择器
Web 中的 Css 选择器,本来是用于实现在特定 DOM 元素上应用花括号内的样式这样一个功能的。
在爬虫中,我们可以用它来选择提取出需要的内容。Css 有非常丰富的功能,因为我们只用它提取数据,我们只会用到 Css 的选择器。
- 标签选择器:直接写标签名,比如
title
就表示选择 title 这个标签。 - 类选择器:以小数点开头,比如
.nav
就表示选择所有 class 属性为nav
的 DOM 元素。 - ID 选择器:以 # 开头,比如
#content
就表示选择 id 属性为content
的 DOM 元素。(跟据 css 规范,id 属性值应该是唯一的,不能存在其他具有相同 id 的元素) - 属性选择器:写在[]括号内,如
a[href="https://example.org"]
- 伪元素选择器:伪元素选择器来自Css3规范,使用两个冒号引导。最常用的应该是
title::text
这个伪元素。(不过 css3 规范里好像没有 text 伪元素) - 关系选择器:基于关系的选择器-MDN
XPath
直接看阮老师的吧:xpath路径表达式笔记 - 阮一峰
正则
略过。。