scrapy:常用命令and五大组件

1.常用命令

scrapy startproject 项目名称:在当前目录下创建一个指定名称的文件夹,里面放置了scrapy框架除爬虫文件以外的所有文件:
在这里插入图片描述
创建好的文件夹内容如图:
在这里插入图片描述
scrapy genspider 爬虫文件名 网址:创建爬虫文件,这个网址可以先随便填,之后在爬虫文件中修改。PS:一定要先进入刚刚创建的那个项目文件夹中!!!!
在这里插入图片描述

在这里插入图片描述
scrapy crawl 爬虫文件名:执行爬虫,开始爬取数据

2.scrapy五大组件

在这里插入图片描述
先解释一下每个步骤是干什么的:
①:spider将start_urls这个列表提交给engine
②:engine将start_urls提交给scheduler(调度器),scheduler对start_urls中的url进行去重、排队列
③:scheduler将处理好的start_urls返回给engine
④:engine将处理好的start_urls提交给downloader
⑤:Downloader对每个url向Internet发起请求(request)
⑥:Internet将请求结果(response)返回给Downloader
⑦:Downloader将response提交给engine
⑧:engine将response返回给spider进行数据解析
⑨:engine将解析好的数据封装到item,然后提交给engine
⑩:engine将item提交给pipeline,进行持久化存储
PS:

  1. Downloader基于twisted,异步下载

  2. 持久化存储也可以不通过pipeline进行:通过终端指令进行
    - 指令: scrapy crawl 爬虫文件名 -o 存储文件名
    - 能存储到本地内容只能是爬虫文件中parse函数的返回值
    - 持久化存储的文件类型只能是json、jsonlines、jl、csv、xml
    - 优点:简介高效便捷
    - 缺点:局限性强
    3.基于pipeline的持久化存储步骤:

      a.编码流程:
         - 爬虫文件:数据解析
         - items.py:在item类中定义相关的属性
         - 爬虫文件:将解析的数据封装存储到item类型的对象
         - 爬虫文件:将item类型的对象提交给管道进行持久化存储操作
         - pipelines.py:管道类的process_item函数将接收到的item对象中存储的数据进行持久化存储操作
         - settings.py:在配置文件中开启管道
      b.优点:
         通用性强
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值