Scrspy 命令

Scrapy 中的命令在开发中会经常用到,可以说没有命令就没有 Scrapy ,下面我就来讲解一下 Scrapy 常用的命令。

零、命令分类

Scrapy 具有两种类型的命令,分别是项目命令和全局命令。所谓的项目命令就是在项目中执行的命令,而全局命令则是指不需要在项目中运行的命令(感觉这段有点废话,o(*≧▽≦)ツ)。

  1. 项目命令
    项目命令包含如下 7 个。
命令说明
crawl运行指定爬虫
check检查爬虫代码
list列出项目中所有爬虫
edit编辑爬虫文件
parse爬取指定的url
genspider创建爬虫
bench性能检测
  1. 全局命令
    全局命令同样包括 7 个。
命令说明
startproject创建项目
settings查看设置信息
runspider运行爬虫
shell打开shell控制台
fetch下载网页信息
view浏览器打开指定网址
version查看版本号
一、常用命令解析

常用的 Scrapy 命令由 8 种,分别是 startproject 、 genspider 、 crawl 、 list 、fetch 、 runspider 、 view 和 parse,下面分别来进行介绍。

  1. startproject
  • 语法格式为:
scrapy startproject [爬虫项目名称] [项目存储文件夹]

Tip:这里需要注意的是项目存储文件夹是个可选参数,如果不指定的话将创建一个和项目名称一样的文件夹来存储爬虫代码。

命令执行后将生成如下结构的项目目录。

在这里插入图片描述

下面我针对上面的文件和文件夹进行解释。

  • spders:存储的是所有的爬虫文件;
  • items.py:定义 Scrapy 的输出内容;
  • middlewares.py:定义了爬虫中使用的中间件;
  • pipelines.py:定义如何处理爬取的数据;
  • settings.py:配置文件,所有的中间件和 pipeline 等必须在这里激活。
  1. genspider
    通过 startproject 创建了项目基本框架后,我们就可以创建爬虫了。
  • 语法格式
scrapy genspider [-t 模板名称] [爬虫名称] [爬取的页面url]

在上面命令中我们可以通过 -t 指令指定爬虫所使用的模板,该指令可以不填写,Scrapy 中存在 4 中模板分别是 basiccrawlcsvfeedxmlfeed 。如果不传递 -t 指令将默认使用 basic 模板,在后面的文章中我们讲解这些模板相关的知识。

  1. crawl
    创建并编写完爬虫后我们将启动爬虫,启动爬虫的命令很简单.
  • 语法
scrapy crawl [爬虫名称]
  1. list
    当我们的项目中有很多爬虫的时候,我们可以使用 list 命令查看所有的爬虫信息。
  • 语法
scrapy list
  1. fetch
    fetch 命令会下载指定的 url 页面。
  • 语法
scrapy fetch [设置信息] [url]

设置信息包含 4 种:

  • –spider=spider:使用指定的 spider 替换默认值;
  • –headers:打印 Response 的 header;
  • –no-redirect:不进行重定向抓取;
  • –nolog:不输出运行日志。
  1. runspider
    当我们的项目为创建时可以利用这个命令运行爬虫文件。
  • 语法
scrapy runspider [设置信息] spider.py

设置信息常用的指令是 –o File ,它会将抓取的信息保存到 File 里,File 指的是数据要保存的而文件完整路径。
7. view
通过 view 命令可以下载并在默认浏览器中运行页面。

  • 语法
scrapy [url]

Tip:有些情况下我们看到的页面和 view 命令现实的页面不一样,这是因为 view 命令加载的页面是不执行页面里的异步加载的部分。

  1. parse
    这个命令我们经常用来测试爬虫的运行效果。
  • 语法
scrapy parse [设置信息] [url]

设置信息包含 8 种:

  • –spider=spider:使用指定爬虫;
  • –a Name=VALUE:爬虫参数;
  • -c:处理 Response 的回调函数;
  • -m:向 Request 传递参数,参数格式为 {“name”:“value”};
  • –pipelines:指定使用的 items;
  • -r:指定使用的 rules ,这个指令只在 crawl 模板中适用;
  • –noitems:不显示爬取的item;
  • –nolinks:不显示解析链接。
二、总结

这一小节主要讲解了 Scrapy 常用的命令,这些命令在实际开发中很有用。如果在使用中有疑问的话可以使用 scrapy [命令] -h 查看具体用法。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喵叔哟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值