防止在ipython shell中显示调试日志信息

防止在ipython shell中显示调试日志信息,python,python-3.x,scrapy,ipython,Python,Python 3.x,Scrapy,Ipython,我在virtualenv中使用scrapy shell。IPython安装在virtualenv内部。当我开始使用scrapy shell时 scrapy shell 'https://example.com' 按tab键可获得自动完成建议,它会显示大量调试信息。如何禁用此功能 In [1]: from scra2018-03-23 10:05:45 [parso.python.diff] DEBUG: diff parser start 2018-03-23 10:05:45 [parso

我在virtualenv中使用scrapy shell。IPython安装在virtualenv内部。当我开始使用scrapy shell时

 scrapy shell 'https://example.com'
按tab键可获得自动完成建议,它会显示大量调试信息。如何禁用此功能

In [1]: from scra2018-03-23 10:05:45 [parso.python.diff] DEBUG: diff parser start
2018-03-23 10:05:45 [parso.python.diff] DEBUG: diff parser calculated
2018-03-23 10:05:45 [parso.python.diff] DEBUG: diff: line_lengths old: 1, new: 1
2018-03-23 10:05:45 [parso.python.diff] DEBUG: diff replace old[1:1] new[1:1]
2018-03-23 10:05:45 [parso.python.diff] DEBUG: parse_part from 1 to 1 (to 0 in part parser)
2018-03-23 10:05:45 [parso.python.diff] DEBUG: diff parser end

尝试执行此操作以将日志记录级别设置为
警告

import logging

logging.getLogger().setLevel(logging.WARNING);
任何级别为
INFO
DEBUG
的日志消息都不应再出现。您还可以将日志级别设置为
logging.ERROR
。然后,
警告
消息也不会出现

祝你好运

这里好像有报告

如果您需要在ipython中调试日志记录,请尝试

logging.getLogger('parso.cache').disabled=True
logging.getLogger('parso.cache.pickle')。disabled=True


继续等待parso更新

在答案的基础上将其添加到您的pythonstartup$pythonstartup中

try:
    _ = __IPYTHON__ 
    import IPython
    ip=IPython.get_ipython()
    c = ip.__dict__['Completer'] 
    import logging
    logging.getLogger('parso.cache').disabled=True
    logging.getLogger('parso.cache.pickle').disabled=True
    print(">> debug msg from $HOME/.pythonrc.py <<")
except NameError:
    pass # no ipython
试试看:
_=\uuuIpython\uuuuu
进口伊皮顿
ip=IPython.get_IPython()
c=ip._udict__['Completer']
导入日志记录
logging.getLogger('parso.cache').disabled=True
logging.getLogger('parso.cache.pickle')。disabled=True

打印(“>>debug msg from$HOME/.pythonrc.py您可以在settings.py文件中设置日志级别

LOG\u LEVEL='INFO'


这将隐藏来自scrapy的
DEBUG
级别消息。

您可以使用
-L
命令行选项将日志级别更改为
INFO

scrapy shell -L INFO https://example.com

我承受了很长时间,没有找到理想的解决方案,卸载parso模块后,一切都很好

pip uninstall parso

在shell中执行以下代码:

__import__("logging").getLogger("parso.python.diff").disabled=True

它解决了我的问题。我没有每次都这样做,而是将它写入我的
设置中。py
很酷,很高兴我能帮忙!祝你好运:)是的,这个问题和我的问题完全一样。有没有办法在启动shell时自动运行这个问题?只需将它添加到~/.ipython/profile_default/startup/00-first.pyWorking解决方案:对我来说,工作是做
logging.getLogger('parso').setLevel(logging.WARNING)