Python 运行多个刮痧蜘蛛的正确方法

Python 运行多个刮痧蜘蛛的正确方法,python,scrapy,scrapyd,Python,Scrapy,Scrapyd,我刚刚尝试使用在同一进程中运行多个爬行器,但得到的结果是:AttributeError:'CrawlerProcess'对象没有属性'crawl' 我发现存在相同的问题,因此尝试使用中的代码,得到:runspider:error:无法加载'price\u comparator.py':没有名为testspider.spider.followall的模块 对于1.0 I导入: from scrapy.crawler import CrawlerProcess from twisted.inter

我刚刚尝试使用在同一进程中运行多个爬行器,但得到的结果是:AttributeError:'CrawlerProcess'对象没有属性'crawl'

我发现存在相同的问题,因此尝试使用中的代码,得到:runspider:error:无法加载'price\u comparator.py':没有名为testspider.spider.followall的模块

对于1.0 I导入:

from scrapy.crawler import CrawlerProcess
from twisted.internet import reactor
from scrapy.crawler import Crawler
from scrapy import log
from testspiders.spiders.followall import FollowAllSpider
from scrapy.utils.project import get_project_settings
对于0.24 I导入:

from scrapy.crawler import CrawlerProcess
from twisted.internet import reactor
from scrapy.crawler import Crawler
from scrapy import log
from testspiders.spiders.followall import FollowAllSpider
from scrapy.utils.project import get_project_settings
基于0.24文档,代码似乎在多个域中运行一个爬行器,这似乎与1.0文档的代码不一样,但无论如何我都运行了。我确实有代码在文件中运行这两个爬行器,我的爬行器是在文件中定义的,所以这可能是一个问题。新版本的代码是否存在内部问题,或者程序中是否缺少某些依赖项或代码?我有下面两个文档中的代码文件(我没有同时运行两个版本)

蜘蛛类定义

底部的相关代码


嗯,我在本地尝试了你的脚本,它可以工作——我在使用Scrapy 1.0运行它时没有例外。1@GHajba您在终端中运行了什么命令?运行该命令时您在项目的根目录中?您是否尝试将Scrapy升级到1.0.1?也许这是一个微小的区别。如果你不能让它工作,另一个解决方案是编写一个脚本,从你的项目目录中调用命令“scrapy list”。从他们的列表中,你可以看到每个蜘蛛的名字。因此,您可以让这个脚本遍历名为“scrapy crawl{spider name here}”的列表。我知道这是一种黑客行为,但如果你不能理解它,它会起作用。你可以把它放在你通常发出的cmd“scrapy crawl{spider name}”的文件夹中,也就是你的项目根目录