Python捕获特定异常

2024-03-28 05:08:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python脚本,它被用来自动化GPG/PGP文件加密(在一些其他任务中),我在捕捉gunpg从脚本中抛出的错误时遇到了一个问题。总体设置是在数据库表中配置变量,并将它们拉到脚本中以加密文件。在

因此,我要捕捉与加密过程失败相关的错误(例如数据库中键入的密钥不正确)。当我使用错误的密钥从python shell执行加密时,我得到以下错误:

<gnupg.Crypt object at 0x7f49d0c51b50>

我正在尝试捕捉错误并将信息发送到日志文件中,以便在设置时更好地调试任何问题。以下是脚本中与此相关的代码:

^{pr2}$

这只是被跳过,稍后我在脚本中发现加密过程失败,当我试图验证加密文件是否存在时。在

任何帮助都是非常感谢的。谢谢!在


Tags: 文件脚本数据库键入object过程错误密钥
1条回答
网友
1楼 · 发布于 2024-03-28 05:08:15

<gnupg.Crypt object at 0x7f49d0c51b50>gpg.encrypt_file()的返回值,不是异常。Python控制台只是为您显示它,因为您没有将它分配给变量。在

请注意,encrypt_file()docs状态:

Any public key provided for encryption should be trusted, otherwise encryption fails but without any warning. This is because gpg just prints a message to the console, but does not provide a specific error indication that the Python wrapper can use.

大概,这也适用于密钥库中不存在密钥的情况。在

相关问题 更多 >