3
logging.basicConfig(
filename='log.txt',
format='%(levelname)s: %(message)s',
level=logging.CRITICAL
)
configure_logging(install_root_handler=False)
process = CrawlerProcess(get_project_settings())
process.crawl('1740')
process.start() # the script will block here until the crawling is finished
に示したように、私は私のクモのログレベルを設定したいが、私はルートロガーをインストールしていない場合でも、私のScriptyのからscrapyスパイダーを開始しようとしています私の基本設定をlogging.basicConfigメソッドで設定すると、determindedレベルに従いません。
INFO: Enabled spider middlewares:
['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware',
'scrapy.spidermiddlewares.offsite.OffsiteMiddleware',
'scrapy.spidermiddlewares.referer.RefererMiddleware',
'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware',
'scrapy.spidermiddlewares.depth.DepthMiddleware']
INFO: Enabled item pipelines:
['collector.pipelines.CollectorPipeline']
INFO: Spider opened
INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
basicConfigでは次の形式とファイル名が使用されますが、ログレベルは使用されません。私はこの場所以外の伐採レベルを決定しません。
注:私はロギングまたはロギングレベルを変更する他の場所はありません。 scrapy自体については
をはい、それはありません。最初;たとえ私がその設定を変更したとしても、stdoutログにのみ適用されます。例えば、LOG_ENABLEDをFalseに変更した場合、stdoutへのログは生成されませんが、main(上)で決定されたファイルに対して生成を継続しています。このアプローチの第2の問題は、それはグローバルな設定です。私はロガーの設定を別々に変更したい。 – guemues