gpt4 book ai didi

python - 抑制 Paramiko stderr 输出

转载 作者:太空宇宙 更新时间:2023-11-04 00:10:22 24 4
gpt4 key购买 nike

我将 paramiko 用作 python 脚本的一部分。在此脚本中,我还使用 python 的日志记录模块来记录日志文件和标准错误。只有我通过 logger.debug、logger.info 等指定的内容才会显示在控制台中。不幸的是,当我按如下方式调用 paramiko 时:

client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname=host, port=port, username=user, key_filename=keyfile)

以下消息输出到 stderr:

CryptographyDeprecationWarning:签名者和验证者已被弃用。请改为使用签名和验证。

我试图通过像这样将 paramiko 的日志记录更改为 CRITICAL 来抑制:

logging.getLogger("paramiko").setLevel(logging.CRITICAL)

以及将其定向到这样的文件:

paramiko.util.log_to_file('filename.log')

但两者都不起作用。

有没有办法让这个停止显示为控制台输出?

最佳答案

这是 paramiko==2.4.2 仍然存在的问题;显然是预定的for the next 2.x release ,很可能是 2.5。

他们陈述的问题本质上是“较旧的 paramiko,较新的 cryptography

与此同时,你可以试试这个来修复它:

pip uninstall cryptography ; pip install cryptography==$DESIRED_VERSION

the version you need 替换 $DESIRED_VERSION . paramiko 2.4.2 于 2018 年 9 月发布,看起来兼容的最新版本是 cryptography 2.3.1。在我的设置中,它有效。

这实质上意味着降级您的加密包,因此在执行此操作之前请三思。

关于python - 抑制 Paramiko stderr 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52671002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com