scrapy:工具命令行分为两种:全局命令和项目命令。
注意:全局命令可以在全局中直接运行,而项目命令必须在scrapy项目中运行。
01-全局命令
查看全局命令
scrapy -h
Available commands:
bench Run quick benchmark test
check Check spider contracts
crawl Run a spider
edit Edit spider
fetch Fetch a URL using the Scrapy downloader
genspider Generate new spider using pre-defined templates
list List available spiders
parse Parse URL (using its spider) and print the results
runspider Run a self-contained spider (without creating a project)
settings Get settings values
shell Interactive scraping console
startproject Create new project
version Print Scrapy version
view Open URL in browser, as seen by Scrapy
注意:bench命令比较特殊,仍归为项目命令。
(1)fetch命令
作用:主要用来显示爬虫的爬取过程。
实例:
scrapy fetch http://www.baidu.com
注意:在项目目录之外调用,会调用scrapy默认爬虫来爬取,如果在牧歌项目目录进行调用,会调用带项目中的爬虫进行爬取。
我们在使用fetch命令的是后也可以,使用某些参数进行相应控制。
--headers 显示爬去网页的头信息
--nolog 不显示日志信息
--spider== SPIDER 控制使用那个爬虫
--logfile ==FILE 制定存储日志信息文件
--loglevel=LEVEL 控制日志等级
实例:
scrapy fetch --headers --nolog shttp://www.baidu.com
(2) runspider命令
作用:不依托scrapy的爬虫项目,直接运行一个爬虫文件。
实例:(first.py 为爬虫文件)
scrapy runspider --loglevel=INFO first.py
(3)settings 命令
- 作用:查看对应得scarpy配置信息
- 项目内部使用:查看项目配置信息
- 项目外部使用:查看项目默认配置信息
查看qianmu项目的BOT_NAME值
scrapy settings --get BOT_NAME qianmu
(4)shell命令
作用:启动scrapy的交互式终端(Scrapy shell),方便开发与调试
scrapy shell http://www.baidu.com --nolog
ti = sel.xpath("/html/head/title")
print(ti)
exit()
(5)startproject 命令
作用:用于创建项目。
scrapy startproject mm
(6)version 命令
作用:查看版本信息
scrapy version -v
(7)view 命令
作用:实现下载某个网页并用浏览器查看的功能
scrapy view http://news.163.com/
02-项目命令
基于项目使用,先进入项目目录。一般只能在项目文件夹中使用。
主要有:bench,check,crawl,edit,genspider,list,parse
(1)Bench 命令
作用:可以测试本地硬件性能,每分钟爬取网页条数。
scrapy bench
(2)Genspider 命令
作用:快速创建爬虫文件。
查看当前爬虫模板
scrapy genspider -l
Available templates:
basic
crawl
csvfeed
xmlfeed
基于模板生成爬虫文件
scrapy genspider -t basic weisuen iqianyue.com
查看爬虫模板内容
scrapy genspider -d csvfeed
(3) check 命令
作用:爬虫测试比较麻烦,所以使用合同(contract)的方式对爬虫进行测试。跟爬虫名不是爬虫项目名。
scrapy check weisuen
Ran 0 contracts in 0.000s
OK
(4)crawl 命令
作用:启动爬虫文件,跟爬虫名不是爬虫项目名。
scrapy crawl weisuen --loglevel=INFO
(5)list 命令
作用:列出当前可使用的爬虫文件。
scrapy list
(6)edit 命令
作用:可以直接打开对应的编辑器对爬虫文件编辑,在windows可能会出现一点问题,但是在liunx很方便。
scrapy edit weisuen
(7)parse 命令
作用:获取指定的url网址,并且用对应的爬虫文件进行处理和分析。
scrapy parse http://www.baidu.com --nolog
查看parse参数
scrapy parse -h
可以看到分为:普通参数和全局参数。
Options
=======
--help, -h 查看命令ow this help message and exit
--spider=SPIDER 强行指定某个爬虫文件spider进行处理
-a NAME=VALUE 设置spider参数,可能会重复
--pipelines 通过pipelines来处理items
--nolinks 不展示提取到的链接信息
--noitems 不展示得到的items
--nocolour 输出结果颜色不高亮
--rules, -r 使用CrawlSpider规则去处理回掉函数
--callback=CALLBACK, -c CALLBACK
指定spider中用于处理返回的响应的回掉函数
--depth=DEPTH, -d DEPTH
设置爬行深度默认深度是1.
--verbose, -v 显示每层的详细信息
实例
scrapy parse http://www.baidu.com --spider=weisuen --nolog