Невозможно вызвать паука для запуска внутри цикла for - PullRequest
0 голосов
/ 11 апреля 2020

В принципе, у меня есть два паука. MySpider1 очистит страницу индекса и извлечет ссылку для MySpider2. Но внутри для l oop в MySpider1 он не может запустить нового паука и вернуть ошибку ReactorAlreadyRunning.

class MySpider1(scrapy.Spider):
    name = 'GenerateLink'
    start_urls = ['www.index.page']

    def parse(self, response):
        for link in response.css('.a::attr(href)').getall():
            process2 = CrawlerProcess()
            process2.crawl(MySpider2, link)
            process2.start()


class MySpider2(scrapy.Spider):
    name = 'MySpider2'

    def __init__(self, link=None, **kwargs):
        self.start_urls = link
        super().__init__(**kwargs)

    def parse(self, response):
        yield response.css('.a')

process = CrawlerProcess(s)
process.crawl(GeneratelinkSpider)
process.start()

Но он выдает ошибку в process2.start (): [ReactorAlreadyRunning]

...