Scrapy学习: 常用的选择器/selector操作(xpath/css)

Scrapy Selector详解
更新于: 2023-12-28 17:29:42

实际中的常用操作

需求实现备注
提取网页标题文本
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 方法即可

四个基本方法

  1. xpath(),返回选择器列表
  2. css(),返回选择器列表,用css语法返回的节点
  3. extarct(),返回被选择元素的 unicode 字符串
  4. re() 返回正则提取的 unicode 字符串表达式

Xpath 路径:

/: 绝对路径,表示从根节点选择

//: 相对路径,表示从任意位置,而不考虑他们的位置

xpath 常用选择示例

使用索引 

//*/td[7]/a[1] : 定位第8个td下面的,第2个a节点

使用属性

xpath使用属性来选择

多条件选择

使用函数

xpath使用函数

Xpath轴

xpath轴

参考