10.2 Python Scrapy的shell编程

2、Scrapy的shell编程

  • 使用 Scrapy 进行爬虫时,先用 shell 程序调试成功后再在 Scrapy 项目中运行,减少直接在 Scrapy 项目中运行出错导致工作效率低

需求

1)启动shell调试抓取数据

2)浏览器伪装

3)使用XPath、CSS选择器提取数据

查看response包含的方法:
  • cmd 窗口下:

    dir(response)

    ...
    
    'css'
    
    ...
    
    'xpath'
    
  • 使用 XPath 或 CSS选择器取网页中提取感兴趣的信息。

    • XPath 的简化写法:

      表达式作用
      nodename匹配此节点的所有内容
      /匹配根节点
      //匹配任意位置的节点
      .匹配当前节点
      匹配父节点
      @匹配属性
步骤:
(1)打开目标页面的源码,找到想要数据的模块信息

在这里插入图片描述

(2)设计 xpath 语句
  • scrapy shell 请求成功后,测试 xpath 语句获取数据

    • response.xpath(’//div[@class=“job-primary”]’)

      在这里插入图片描述

      分析:获取 “job-primary” 的 div 模块信息

    • response.xpath(’//div[@class=“job-primary”]/div/h3/a/div[@class=“job-title”]/text()’)

      在这里插入图片描述

      分析:获取想要数据的网页源码

      • 同上:

        response.xpath(’//div[@class=“job-primary”]/div[@class=“info-primary”]/h3/a/div[@class=“job-title”]/text()’)

    • response.xpath(’//div[@class=“job-primary”]/div/h3/a/div[@class=“job-title”]/text()’).extract()

      在这里插入图片描述

      分析:获取要想数据的文本信息

(3)(亦可用)CSS语句
  • 简化写法

    • 子节点:>
    • 后代节点:空格
  • cmd 窗口下:

    response.css(‘div.job-primary>div.info-primary div.job-title’).extract()

    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值