2018-10-28
Scrapy命令行详解
原文地址:https://www.cnblogs.com/zhaof/p/7183220.html
这篇文章主要是对的scrapy命令行使用的一个介绍
创建爬虫项目
scrapy startproject 项目名
1 | C:\Users\lenovo>scrapy startproject test1 |
这个时候爬虫的目录结构就已经创建完成了,目录结构如下:1
2
3
4
5
6
7
8
9
10
11
12
13
14│ scrapy.cfg
│
└─test1
│ items.py
│ middlewares.py
│ pipelines.py
│ settings.py
│ __init__.py
│
├─spiders
│ │ __init__.py
│ │
│ └─__pycache__
└─__pycache__
接着我们按照提示可以生成一个spider,这里以百度作为例子,生成spider的命令格式为;
scrapy genspider 爬虫名字 爬虫的网址
1 | C:\Users\lenovo\test1>scrapy genspider baiduSpider baidu.com |
关于命令详细使用
这里的命令分为全局的命令和项目的命令,全局的命令表示可以在任何地方使用,而项目的命令只能在项目目录下使用1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17全局的命令有:
startproject
genspider
settings
runspider
shell
fetch
view
version
项目命令有:
crawl
check
list
edit
parse
bench
genspider
用于生成爬虫,这里scrapy提供给我们不同的几种模板生成spider,默认用的是basic,我们可以通过命令查看所有的模板
1 | C:\Users\lenovo\test1>scrapy genspider -l |
当我们创建的时候可以指定模板,不指定默认用的basic,如果想要指定模板则通过
scrapy genspider -t 模板名字
1 | C:\Users\lenovo\test1>scrapy genspider -t crawl zhihuspider zhihu.com |
crawl
这个是用去启动spider爬虫格式为:
scrapy crawl 爬虫名字
这里需要注意这里的爬虫名字和通过scrapy genspider 生成爬虫的名字是一致的
check
用于检查代码是否有错误,scrapy check
list
scrapy list列出所有可用的爬虫
fetch
scrapy fetch url地址
该命令会通过scrapy downloader 讲网页的源代码下载下来并显示出来
这里有一些参数:
–nolog 不打印日志
–headers 打印响应头信息
–no-redirect 不做跳转
view
scrapy view url地址
该命令会讲网页document内容下载下来,并且在浏览器显示出来
shell
这是一个命令行交互模式
通过scrapy shell url地址进入交互模式
这里我么可以通过css选择器以及xpath选择器获取我们想要的内容,例如我们通过
scrapy shell http://ipython.org/pyreadline.html

这里最后给我们返回一个response,这里的response就和我们通requests请求网页获取的数据是相同的。
view(response)会直接在浏览器显示结果
response.text 获取网页的文本
settings
获取当前的配置信息
通过scrapy settings -h可以获取这个命令的所有帮助信息
1 | C:\Users\lenovo\test1>scrapy settings -h |
runspider
这个和通过crawl启动爬虫不同,这里是scrapy runspider 爬虫文件名称
所有的爬虫文件都是在项目目录下的spiders文件夹中
version
查看版本信息,并查看依赖库的信息
1 | C:\Users\lenovo\test1>scrapy version -v |
Y's Blog
