CrawlerRunner не ждет? - PullRequest
       26

CrawlerRunner не ждет?

1 голос
/ 18 июня 2019

Я пытался использовать следующую функцию, чтобы дождаться завершения сканирования и вернуть все результаты.Однако эта функция всегда сразу возвращается при вызове, пока сканер все еще работает.Что мне здесь не хватает?Разве join () не должен ждать?

def spider_results():
    runner = CrawlerRunner(get_project_settings())
    results = []

    def crawler_results(signal, sender, item, response, spider):
        results.append(item)

    dispatcher.connect(crawler_results, signal=signals.item_passed)
    runner.crawl(QuotesSpider)
    runner.join()
    return results

1 Ответ

0 голосов
/ 18 июня 2019

В соответствии с документами Scrapy ( раздел общих практик ) * В этом случае рекомендуется использовать класс 1003 *.

...