10.1 Python Scrapy下载和安装及创建目录

1、Scrapy下载和安装及创建目录

1)安装Scrapy模块

步骤:
(1)Scrapy 依赖大量第三方包,尤其是 Twisted,pip 自动下载的 Twisted 安装包有一些缺陷,因此需要先自行下载、安装 Twisted
  1. 打开 python 模块下载地址

  2. 搜索 twisted,找到

    在这里插入图片描述

  3. 下载对应的 Twisted 版本,我下载的 Twisted-19.2.1-cp37-cp37m-win_amd64.whl,对应 python3.7 版本,64位操作系统;csdn下载 Twisted 安装包

  4. cmd 窗口下

    F:
    cd F:\安装包\twisted安装包
    pip install Twisted-19.2.1-cp37-cp37m-win_amd64.whl

    • 若出现:

      在这里插入图片描述

      则升级 pip 后再安装 Twisted 即可。

      python -m pip install --upgrade pip
      pip install Twisted-19.2.1-cp37-cp37m-win_amd64.whl

(2)安装 Scrapy
  • cmd 窗口下

    pip install scrapy

2)创建Scrapy项目

  • 创建 Scrapy 开发爬虫时,通常需要创建一个 Scrapy 项目,通过如下命令即可创建 Scrapy 项目
    • cmd 窗口下,创建 ZhipinSpider(直聘蜘蛛)项目

      F:
      cd F:\PycharmProjects
      scrapy startproject ZhipinSpider

      在这里插入图片描述

    • 得到 ZhipinSpider 项目(Scrapy 项目)

      在这里插入图片描述

  • Scrapy 项目分析:
    • scrapy.cfg:项目的总配置文件,通常无需修改
    • ZhipinSpider/:项目 Python 模块,程序将从此处导入 Python 模块
      • items.py 文件:定义了 items 类,负责向网上抓取对象
      • pipelines.py 文件:管线,将爬取的数据写到 IO 节点,负责数据输出
      • settings.py 文件:项目的设置文件
      • spiders/:负责抓取的文件

3)Scrapy项目结构与架构

在这里插入图片描述

分析:
  • 调度器发送请求,从互联网下载数据
  • 获取数据后,由下载中间件把响应的文本传给蜘蛛
  • 由 Scapy 引擎调用蜘蛛向响应的文本中提取它所感兴趣的数据
  • Scapy 引擎将提取到的数据封装成 Item
  • 传给 Pipeline
  • Pipeline 负责把数据写入文件、写入数据库或打印控制台等

4)Scrapy核心组件

  • 调度器:该组件由 Scrapy 框架实现
  • 下载器:该组件由 Scrapy 框架实现
  • 蜘蛛:该组件由开发者实现
  • Pipline:该组件由开发者实现

5)查看 Scrapy 文档步骤

  1. cmd 窗口下

    python -m pydoc -p 8899

  2. 浏览器打开 http://localhost:8899/

  3. 搜索 scrapy 并点击查看

    在这里插入图片描述

分析:

  1. Scrapy 与 urllib 模块请求调用的库不同,使用的第三方库
  2. 与正则表达式从网页源码中匹配数据相比:
    • 正则表达式性能低且写起来麻烦(不推荐),使用 Scrapy 模块中的 xpath 或 css方 法则方便很多;
    • 正则表达式对所有文档都可用,更通用;爬虫爬取的数据为 html 结构化文档, xpath 是专门用来提取这种结构化文档中的数据,相比更专业,高效。
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值