Scrapy有两种命令,一种是全局命令,一种是项目命令。全局命令是不一定要在项目路径执行的,而项目命令是一定要在项目路径中执行的。
全局命令
全局命令 | 用法 |
---|---|
startproject | 新建一个爬虫项目,使用时注意路径 |
settings | 获取Scrapy的设定 |
runspider | 在未创建项目的情况下,运行一个编写在Python文件中的spider |
shell | 以给定的URL(如果给出)或者空(没有给出URL)启动Scrapy shell |
fetch | 使用Scrapy下载器下载给定的URL,并将获取到的内容送到标准输出 |
view | 在浏览器中打开给定的URL,并以Scrapy spider获取到的形式展现 |
version | 输出Scrapy版本。可配合 -v 运行 |
项目命令
项目命令 | 用法 |
---|---|
crawl | 使用spider进行爬取 |
check | 运行contract检查 |
list | 列出当前项目中所有可用的spider |
edit | 使用 EDITOR 中设定的编辑器编辑给定的spider |
parse | 获取给定的URL并使用相应的spider分析处理。提供 –callback 选项 |
genspider | 在当前项目中创建spider |
deploy | 将项目部署到Scrapyd服务 |
bench | 运行benchmark测试 |
不论是全局命令还是项目命令,在运行时都需要在前面加个Scrapy
,不然怎么说你是在用Scrapy框架呢?
对于我们新手,我觉得scrapy -h
这个获取当前可用命令集,以及scrapy 你的命令 -h
获取你的命令
用法的这两个命令是非常有用的。
还有就是路径的问题,就算是全局命令也不要随便在命令行运行好吗?说不定你随便运行一个全局命令,然后连新建的文件都找不到(除非你很细心)。