写好自己的爬虫项目之后,可以自己定制爬虫运行的命令。

一、单爬虫

在项目的根目录下新建一个py文件,如命名为start.py,写入如下代码:

from scrapy.cmdline import execute

if __name__ == "__main__":
execute(["scrapy", "crawl", "chouti", "--nolog"])

运行start.py即可。

二、多爬虫运行

1、在spiders的同级目录创建文件夹,如commands;

2、在这个新建的文件夹下创建一个py文件,如命名为crawlall.py,编写代码:

from scrapy.commands import ScrapyCommand

class Command(ScrapyCommand):
requires_project = True def syntax(self):
return "[options]" def short_desc(self):
return "Run all of the spiders" # 自定义命令描述 def run(self, args, opts):
spider_list = self.crawler_process.spiders.list() # 获取爬虫列表
for name in spider_list: # 循环列表,对每个爬虫进行爬取。也可以对列表中的爬虫进行筛选,根据自己的需求爬取想要的
self.crawler_process.crawl(name, **opts.__dict__)
self.crawler_process.start()

3、在settings.py中添加配置:COMMANDS_MODULE = "项目名.目录名"

如:COMMANDS_MODULE = "myspider.spiders.commands"

4、在终端输入:scrapy crawlall --nolog 即可运行  (crawlall是步骤2中你新建的py文件名)

目录结构

 └─myspider
│ items.py
│ middlewares.py
│ pipelines.py
│ settings.py
│ __init__.py

├─spiders
│ │ zhihu.py
│ │ __init__.py
│ │
│ ├─commands
│ │ │ crawlall.py
│ │ │
│ │ └─__pycache__
│ │ crawlall.cpython-36.pyc
│ │
│ └─__pycache__
│ zhihu.cpython-36.pyc
│ __init__.cpython-36.pyc

└─__pycache__
items.cpython-36.pyc
pipelines.cpython-36.pyc
settings.cpython-36.pyc
__init__.cpython-36.pyc

scrapy框架自定制命令的更多相关文章

  1. scrapy之自定制命令

    写好自己的爬虫项目之后,可以自己定制爬虫运行的命令. 一.单爬虫 在项目的根目录下新建一个py文件,如命名为start.py,写入如下代码: from scrapy.cmdline import ex ...

  2. 爬虫(十四):Scrapy框架(一) 初识Scrapy、第一个案例

    1. Scrapy框架 Scrapy功能非常强大,爬取效率高,相关扩展组件多,可配置和可扩展程度非常高,它几乎可以应对所有反爬网站,是目前Python中使用最广泛的爬虫框架. 1.1 Scrapy介绍 ...

  3. Scrapy 框架 总结

    总结: 1.中间件:下载中间件(拦截请求和响应) - process_request: - prceess_response: - process_exception: - 请求: - UA伪装: - ...

  4. scrapy框架的解析

    1,scrapy框架的官网:https://scrapy.org/ 什么是scrapy框架: scrapy 是一个为了爬取网站数据,提取结构性数据而编写的应用内框架,非常出名,所谓框架就是一个已经继承 ...

  5. Scrapy 框架 中间件,信号,定制命令

    中间件 下载器中间件 写中间件 from scrapy.http import HtmlResponse from scrapy.http import Request class Md1(objec ...

  6. Scrapy框架的命令行详解【转】

    Scrapy框架的命令行详解 请给作者点赞 --> 原文链接 这篇文章主要是对的scrapy命令行使用的一个介绍 创建爬虫项目 scrapy startproject 项目名例子如下: loca ...

  7. scrapy框架的命令行解释

    scrapy框架的命令解释 创建爬虫项目 scrapy startproject 项目名例子如下: scrapy startproject test1 这个时候爬虫的目录结构就已经创建完成了,目录结构 ...

  8. Scrapy爬虫框架与常用命令

    07.08自我总结 一.Scrapy爬虫框架 大体框架 2个桥梁 二.常用命令 全局命令 startproject 语法:scrapy startproject <project_name> ...

  9. Python scrapy框架

    Scrapy Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中.其最初是为了页面抓取 (更确切来说, 网络抓取 )所设 ...

随机推荐

  1. Golang安装和配置

    Golang安装和配置 Linux Golang 下载源码,解压. # /home/superpika为你的主目录 mkdir /home/superpika/go mkdir /home/super ...

  2. Linux mount/unmount 挂载和卸载指令

    对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录.一个独立且唯一的文件结构 Linux中每个分区都是用来组成整个文件系统的一部分,她在用一种叫做“挂载”的处理方法, ...

  3. vscode IIsExpress用法

    最近前端调试项目,都要安装IIS,使用IIS Express插件不需要另外在IIS架设站点,方便使用 1.安装IIS Express插件 2.ctrl+shfit+p 启动IIS Express 命令 ...

  4. 【转载】网站配置Https证书系列(二):IIS服务器给网站配置Https证书

    针对网站的Https证书,即SSL证书,腾讯云.阿里云都提供了免费的SSL证书申请,SSL证书申请下来后,就需要将SSL证书配置到网站中,如果网站使用的Web服务器是IIS服务器,则需要在IIS服务器 ...

  5. K2 BPM_加班党们,说好不哭还是说好不秃?_流程管理

    早上经过财务小陈的办公桌 看到她正边看手机边默默流泪 诶?这不是这两天刷屏的 周杰伦的<说好不哭>吗 小陈你怎么哭啦,这歌让你想到前男友了吗? ...... (摇头) 小陈擦擦眼泪 唱起了 ...

  6. conda升级TensorFlow

    1.打开Anaconda prompt,查看tensorflow各个版本 anaconda search -t conda tensorflow 2.选择自己系统的版本:运行以下命令 anaconda ...

  7. 【nodejs代理服务器三】nodejs注册windows服务

    node-windows I no longer have enough time to properly maintain this project and am seeking a new pri ...

  8. Linux 命令之 alias

    alias 的作用是为命令设置别名,用于提高输入效率 alias 的临时设置 临时设置很简单,直接举例说明 [r@1lin24 ~]$ alias cdlog='cd /var/log' [r@1li ...

  9. MySQL数据库语法-单表查询练习

    MySQL数据库语法-单表查询练习 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客主要是对聚合函数和分组的练习. 一.数据表和测试数据准备 /* @author :yinz ...

  10. grafana忘记登陆密码

    找到grafana的数据文件grafana.db find / -name "grafana.db" ps:默认的安装路径为/var/lib/grafana/grafana.db ...