example python logging scrapy stdout stderr

python - example - Cómo ver el resultado de las instrucciones de impresión cuando el registrador de scrapy está habilitado



scrapy beautifulsoup example (2)

logstdout debe establecerse en False para deshabilitar el redireccionamiento de stdout.

from scrapy import log print ''PRINT OUTPUT BEFORE'' log.start(loglevel=''DEBUG'', logstdout=False) print ''PRINT OUTPUT AFTER''

Con salida:

PRINT OUTPUT BEFORE PRINT OUTPUT AFTER

Para fines de depuración, necesito ver tanto la salida de los mensajes de registro como las declaraciones de impresión al trabajar con Scrapy. Hovewer, cuando inicio el registrador de Scrapy, ¡ya no veo el resultado de las declaraciones de impresión! ¿Cómo debo modificar el siguiente código de muestra para ver ambas instrucciones de impresión?

from scrapy import log print ''PRINT OUTPUT BEFORE'' log.start(loglevel=''DEBUG'',logstdout=True) print ''PRINT OUTPUT AFTER''

Salida:

PRINT OUTPUT BEFORE

Creo que la redirección de stderr o stdout puede resolver el problema. ¡Cualquier ayuda sería muy apreciada!


Creo que arriba funciona para la versión anterior. Parece que han dejado de usar scrapy.log. Consulte: http://doc.scrapy.org/en/1.0/topics/logging.html

P.ej:

import logging logging.warning("This is a warning") logging.info("This is an info") logging.error("This is an error")

Como mi configuración estaba configurada para advertir. Tengo solo debajo

WARNING:root:This is a warning ERROR:root:This is an error

Tenga en cuenta que esto es útil si está utilizando scrapyd. Como scrapy crawl imprimirá todo pero scrapyd no hará lo mismo.