-1

您好,我创建了一个 python 脚本,并希望每天使用 crontab 执行它。

我想在“Ubuntu 服务器”上执行它(基本上是一个使用 ubuntu 桌面 20.04.2.0 的旧笔记本电脑,但我总是让他靠近并主要使用 ssh 登录)

在这个脚本中,我使用 yagmail 在脚本完成运行时通知自己。我在使用命令行时确实工作。但是当我使用 cron 时它不起作用。

我是新手,所以我很难理解为什么它不起作用。为了尝试调试它,我将脚本的输出重定向到一个日志文件中,这就是我得到的:

    File "/usr/lib/python3/dist-packages/keyring/core.py", line 63, in set_password
    _keyring_backend.set_password(service_name, username, password)
  File "/usr/lib/python3/dist-packages/keyring/backends/fail.py", line 25, in get_password
    raise NoKeyringError(msg)
keyring.errors.NoKeyringError: No recommended backend was available. Install a recommended 3rd party backend package; or, install the keyrings.alt package if you want to use the non-recommended backends. See https://pypi.org/project/keyring for details

我试过上网,但没有发现任何有趣/我能理解的东西。

我已经尝试在 user/su 中运行 crontab。没有任何效果,同样的错误。

如果您有任何想法或线索可以让我遵循,那就太好了,谢谢!

4

1 回答 1

0

通过使用 oauth2 使用 yagmail 登录解决了该问题。与 crontab 配合得很好。仍然不知道如何将密钥环与 crontab thoe 一起使用。

于 2021-05-11T21:58:31.767 回答