zoukankan      html  css  js  c++  java
  • scrapy 一个项目里同时运行多个爬虫

    在spiders文件同级建立一个commands文件夹,建立一个py文件,我自定义为crawlall.py。

    from scrapy.commands import ScrapyCommand
     
     
    class Command(ScrapyCommand):
        requires_project = True
     
        def syntax(self):
            return '[options]'
     
        def short_desc(self):
            return 'Runs 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()

    在settings文件里把刚建立的crawlall文件的路径设置好

    COMMANDS_MODULE = "ProxyPool.commands"

    最后在cmd下 scrapy crawlall 运行

     ***********************************************************************

    如果需要运行单个爬虫并指定参数可以:

    scrapy crawl onespider -s LOG_FILE='123.log'        命令,-s传入指定参数

    来自:https://blog.csdn.net/u014248032/article/details/83351291

  • 相关阅读:
    结构体比较
    不定长参数列表用法
    接口
    字符串数据类型
    *和**的打包和解包
    python类常用装饰器
    继承的实现
    map用法
    包的导入和init函数
    协程
  • 原文地址:https://www.cnblogs.com/yoyowin/p/12403156.html
Copyright © 2011-2022 走看看