Scrapy 教程(四)-命令

Scrapy无界面,需通过命令行操作,共有十四五个命令,分为全局命令和项目命令。全局命令在哪都能用,如scrapy bench可进行benchmark测试;项目命令需在项目目录使用。还可在命令行设置参数增强灵活性,让爬虫执行不同任务。

scrapy 没有界面,需要命令行来操作。

 

非常简单,总共也就十四五个命令,分为全局命令和项目命令。

 

全局命令

在哪都能用

 

常用命令

scrapy startproject name    创建项目/工程
scrapy genspider taobao taobao.com    创建爬虫

不太常用

查看爬虫配置/参数  
scrapy settings --get  DOWNLOAD_DELAY    下载延迟
scrapy settings --get  BOT_NAME    爬虫名字
## 在项目运行时,输出项目设定值,否则输出 scrapy 的默认值,所以他既是全局命令,也是项目命令 启动爬虫 scrapy runspider scrapy_cn.py 执行爬虫脚本 scrapy crawl spider [这个也是启动爬虫,是项目命令,需要创建工程] 下载源码
# 看看有没有异步之类的 scrapy fetch https://hao.360.com/?llqxqd scrapy fetch https://hao.360.com/?llqxqd >E:/3.html 下载并保存源码(WINDOWS) scrapy view https://hao.360.com/?llqxqd 下载并直接用浏览器打开 shell 工具 scrapy shell https://hao.360.com/?llqxqd 版本查看 scrapy version

scrapy bench 用于 benchmark 测试,测试 scrapy 在硬件上的效率。

 

项目命令

在项目目录才能用

scrapy crawl  spider         启动爬虫(需要进入app目录)  
scrapy check                   检测爬虫
scrapy list                       显示有多少爬虫(以name为准)

 

 

命令行参数

为了增强scrapy的灵活性,在命令行中可以设置参数,这使得构建好的爬虫能够执行不同的任务。

 

实例代码

def start_requests(self):
        url = 'http://lab.scrapyd.cn/'
        tag = getattr(self, 'tag', None)  # 获取tag值,也就是爬取时传过来的参数
        if tag is not None:          # 判断是否存在tag,若存在,重新构造url
            url = url + 'tag/' + tag     # 构造url若tag=爱情,url= "http://lab.scrapyd.cn/tag/爱情"
        yield scrapy.Request(url, self.parse)  

 

命令行参数设置

scrapy crawl argsSpider -a tag=爱情

 

还有很多其他参数,不太常用,具体请百度。

转载于:https://www.cnblogs.com/yanshw/p/10851220.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值