Correndo aranhas Scrapy em uma tarefa de aipo
Eu tenho um site do Django onde um arranhão acontece quando um usuário o solicita, e meu código inicia um script autônomo de spider do Scrapy em um novo processo. Naturalmente, isso não está funcionando com um aumento de usuários.
Algo assim:
class StandAloneSpider(Spider):
#a regular spider
settings.overrides['LOG_ENABLED'] = True
#more settings can be changed...
crawler = CrawlerProcess( settings )
crawler.install()
crawler.configure()
spider = StandAloneSpider()
crawler.crawl( spider )
crawler.start()
Decidi usar o Celery e usar funcionários para enfileirar as solicitações de rastreamento.
No entanto, estou tendo problemas com reatores Tornado não sendo capazes de reiniciar. A primeira e a segunda aranha são executadas com sucesso, mas as aranhas subsequentes lançam o erro ReactorNotRestartable.
Alguém pode compartilhar alguma dica com a execução de Spiders dentro do framework Celery?