Scrapy学习: 常用的选择器/selector操作(xpath/css)
Scrapy Selector详解
实际中的常用操作
需求 | 实现 | 备注 |
---|
提取网页标题文本 | response.xpath('//title/text()').get()
| 利用相对xpath,提取text文本 |
提取网页标题文本 | response.css('#main .title h1 a::text')
| 利用 ::text 来获取文本 |
提取属性内容 | # 提取meta
response.xpath('//meta[@name="keywords"]')
# 提取 meta标签 里 content 属性的值
response.xpath('//meta[@name="keywords"]/@content').extract_first()
| <meta name="keywords" content="知东莞,东莞市...、欠薪、罚款">
|
带函数 的情况 | response.xpath(//a[contains(@href, "image")])
| |
a 标签里的 属性 | response.css("a::attr('href')")
| |
获取 raw html | response.css('.left-details-head .show-content').get()
| 直接调用 get 方法即可 |
四个基本方法
- xpath(),返回选择器列表
- css(),返回选择器列表,用css语法返回的节点
- extarct(),返回被选择元素的 unicode 字符串
- re() 返回正则提取的 unicode 字符串表达式
Xpath 路径:
/: 绝对路径,表示从根节点选择
//: 相对路径,表示从任意位置,而不考虑他们的位置
使用索引
//*/td[7]/a[1] : 定位第8个td下面的,第2个a节点
使用属性
多条件选择
使用函数
Xpath轴
参考