Ho molti ragni che si muovono in parallelo utilizzando scrapyd. Quello che sto facendo è qualcosa come il seguente codice.Esecuzione di selenio senza testa con più ragni
La mia domanda è, ho davvero bisogno di avviare un display per ogni spider e come fa il conducente a sapere di iniziare a utilizzare quale display? Dovrei semplicemente avviare uno schermo a livello globale e avviare più istanze di webdriver all'interno dello stesso display?
def __init__(self):
dispatcher.connect(self.spider_closed, signals.spider_closed)
def spider_closed(self, spider):
if self.driver:
self.driver.quit()
if self.display:
self.display.stop()
def parse(self, response):
self.display = Display(visible=0, size=(1024, 768))
self.display.start()
self.driver = webdriver.Firefox()
self.driver.get(response.url)
page = Selector(text=self.driver.page_source)
# doing all parsing etc