Как правильно разобрать json. Строковые индексы TypeError должны быть целыми числами [дубликаты]

Я лично рекомендую начинать новый паук каждый раз, когда вам нужно что-то сканировать, но если вы хотите сохранить этот процесс в живых, я бы рекомендовал использовать сигнал spider_idle :

@classmethod
def from_crawler(cls, crawler, *args, **kwargs):
    spider = super(MySpider, cls).from_crawler(crawler, *args, **kwargs)
    crawler.signals.connect(spider.spider_closed, signals.spider_closed)
    crawler.signals.connect(spider.spider_idle, signals.spider_idle)
    return spider
...
def spider_idle(self, spider):
    # read database again and send new requests

    # check that sending new requests here is different
    self.crawler.engine.crawl(
                    Request(
                        new_url,
                        callback=self.parse),
                    spider
                )

Здесь вы отправляете новые запросы до того, как паук действительно закроется.

0
задан blackcat_au 25 March 2019 в 16:00
поделиться