2015-11-22 3 views
0

Можно ли установить LOG_LEVEL в классе Spider?scrapy Настройка LOG_LEVEL в пауке не работает

Когда я попытался установить его на INFO, я все еще вижу сообщения DEBUG.

Когда я установил его в файле settings.py или через опцию командной строки --loglevel, он работает.

Я думал, что могу установить любые настройки с помощью атрибута custom_settings. Это ошибка? (Scrapy 1.0.3 и питон 2.7.10)

class TestSpider(scrapy.Spider): 
    name = "Test" 
    ... 
    custom_settings = { 
     'LOG_LEVEL': 'INFO', 
    } 
+0

Это известная проблема: https://github.com/scrapy/scrapy/issues/ 1612 – elias

+0

Да, я создал билет github после публикации сообщения в StackOverflow. – Michael

ответ

0

Вы можете попробовать что-то вроде этого:

from scrapy.log import ScrapyFileLogObserver 
from scrapy import log 


class MySpider(BaseSpider): 
    name = "myspider" 

    def __init__(self, name=None, **kwargs): 
     ScrapyFileLogObserver(open("spider.log", 'w'), level=logging.INFO).start() 

     super(MySpider, self).__init__(name, **kwargs) 
+0

хорошо спасибо, но знаете ли вы, что изменение параметра в 'custom_settings' должно работать так, как я его написал? – Michael