2020.7.18 爬虫复习

发布于 2020-07-18  15 次阅读


Table of Contents

  • 适合数据在一个页面上的数据,多级页面
  • scrapy第二种爬虫
  • 变化:
    • rules = () 规则 可以正则提取网址
    • follw 是否在子连接中继续提取连接
    • rules = (
        Rule(LinkExtracotr(allow=r"",callback="回调函数",follw=True))
      )

  • scrapy 下载中间件的使用

    • meta
      • meta是一个字典
      • 可以在管道,中间件中使用
    • 分类:
      • 下载中间件
      • 爬虫中间件
    • 作用
      • header cookie更换
      • 使用代理ip
      • 对请求做定制化
    • 中间件的使用方法
      • 在middlerware.py 中定义中间件,需要注册
    • process_request
      • request通过下载中间件时候使用
      • 返回none 如果所有下载器中间件都返回none 则请求最终交给下载器
      • 返回request 通过引擎交给调度器,不通过权重低的下载器
      • 返回response 不再去请求,返给调度器
    • process_response
      • 当下载器完成请求,传递给引擎时候调用
      • 返回response 通过殷勤交给爬虫处理或交给权重更低的其他下器中间件process_response放啊
      • 返回request 通过引擎交给调取器继续请求,不通过其他权重更低的process_request方法
    • 权重值小优先执行
  • Webdriver方式获取数据

    • 1.判断需要获取数据的url
    • 2.driver.get() 打开url
    • 3.driver.page_source 获取到网页源码
    • 4.创建一个响应对象 HtmlResponse(scrapy.http中)
    • 5.返回这个响应对象
  • 分布式 爬虫

  • 4.扩展延伸知识

    5.知识内容个人梳理

    6.今天都复习了之前的什么内容