Führe eine Kratzspinne in einer Sellerie-Aufgabe aus

Das funktioniert nicht mehr, scrapys API hat sich geändert.

Jetzt bietet die Dokumentation einen Weg zu "Führen Sie Scrapy über ein Skript aus"aber ich verstehe dasReactorNotRestartable Error.

Meine Aufgabe:

from celery import Task

from twisted.internet import reactor

from scrapy.crawler import Crawler
from scrapy import log, signals
from scrapy.utils.project import get_project_settings

from .spiders import MySpider



class MyTask(Task):
    def run(self, *args, **kwargs):
        spider = MySpider
        settings = get_project_settings()
        crawler = Crawler(settings)
        crawler.signals.connect(reactor.stop, signal=signals.spider_closed)
        crawler.configure()
        crawler.crawl(spider)
        crawler.start()

        log.start()
        reactor.run()

Antworten auf die Frage(4)

Ihre Antwort auf die Frage