Ho creato uno spider utilizzando Scrapy ma non riesco a capire come disattivare la registrazione predefinita. Da the documentation sembra che dovrei essere in grado di spegnerlo facendoCome disattivare la registrazione in Scrapy (Python)
logging.basicConfig(level=logging.ERROR)
Ma questo non ha alcun effetto. Dall'osservazione del codice per logging.basicConfig() suppongo che questo sia dovuto al fatto che "il logger di root ha configurato i gestori" ma forse ho sbagliato a riguardo. In ogni caso, qualcuno può spiegare che cosa devo fare per ottenere Scrapy di non emettere il consueto
2015-10-18 17:42:00 [scrapy] INFO: Scrapy 1.0.3 started (bot: EF)
2015-10-18 17:42:00 [scrapy] INFO: Scrapy 1.0.3 started (bot: EF)
2015-10-18 17:42:00 [scrapy] INFO: Optional features available: ssl, http11, boto
2015-10-18 17:42:00 [scrapy] INFO: Optional features available: ssl, http11, boto
ecc?
EDIT: Come suggerito da sirfz al di sotto, la linea
logging.getLogger('scrapy').setLevel(logging.WARNING)
può essere utilizzato per impostare il livello di registrazione. Tuttavia, sembra che devi farlo nel metodo init (o successivo) nel tuo spider.
Grazie per il vostro aiuto! Ho capito che l'impostazione del livello funziona solo se l'ho inserita nel __init__ del mio spider. Sto eseguendo il mio spider da uno script: se imposto il livello di registrazione prima di iniziare la scansione, apparentemente viene reimpostato su INFO. Non sto chiamando esplicitamente "configure_logging" ma immagino che Scrapy lo stia facendo da qualche parte durante l'avvio. (?) –
Non ho mai usato il scrapy da solo, ma immagino che il crawler stia applicando una configurazione predefinita per 'logging', il che è strano dato che dovrebbe essere lasciato all'utente. – sirfz