Python 有没有办法从Scrapy输出中隐藏覆盖的凭据设置?

Python 有没有办法从Scrapy输出中隐藏覆盖的凭据设置?,python,scrapy,Python,Scrapy,当覆盖诸如FTP\u PASSWORD或MAIL\u PASS之类的默认设置值时,它们会自动显示在控制台输出上 2020-10-01 14:20:45 [scrapy.utils.log] INFO: Scrapy 2.1.0 started (bot: foo) 2020-10-01 14:20:45 [scrapy.utils.log] INFO: Versions: lxml 4.5.0.0, libxml2 2.9.5, cssselect 1.1.0, parsel 1.5.2, w3

当覆盖诸如
FTP\u PASSWORD
MAIL\u PASS
之类的默认设置值时,它们会自动显示在控制台输出上

2020-10-01 14:20:45 [scrapy.utils.log] INFO: Scrapy 2.1.0 started (bot: foo)
2020-10-01 14:20:45 [scrapy.utils.log] INFO: Versions: lxml 4.5.0.0, libxml2 2.9.5, cssselect 1.1.0, parsel 1.5.2, w3lib 1.21.0, Twisted 19.10.0, Python 3.7.6
2020-10-01 14:20:45 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.selectreactor.SelectReactor
2020-10-01 14:20:45 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'foo',
 'MAIL_FROM': 'foo@bar.com',
 'MAIL_HOST': 'smtp.foo',
 'MAIL_PASS': 'baz',
 'MAIL_PORT': 587,
 'MAIL_USER': 'foo',
 'USER_AGENT': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:64.0) Gecko/20100101 '
               'Firefox/64.0'}
2020-10-01 14:20:45 [scrapy.extensions.telnet] INFO: Telnet Password: 1ca2431dbad58eed
...

一种解决方案可能是使用
log\u ENABLED=False禁用日志,但我正在寻找一种方法来删除它或隐藏该值,因为日志可能与第三方共享。

您考虑过对日志进行后期处理吗?“我认为Scrapy目前不支持这一点。”“Gallaecio还不支持,我首先在Scrapy方面寻找解决方案。这是不是可以由Scrapy来支持?我们可以在显示dict之前对其进行过滤。您可以为此打开一个功能请求。但我个人并不认为它有多大价值。对我来说,在日志中隐藏秘密感觉有点超出了Scrapy的范围。我理解你的观点,但它并不是真的在日志中隐藏秘密(我认为这超出了范围),它更多的是不在日志中显示秘密(我认为这与Scrapy完全相关)。与不显示机密相比,对我来说,对日志进行后期处理似乎有点过分。我认为这些机密也应该隐藏在日志的其他部分。一些调试消息可能也会提到它们。