首页 > 解决方案 > 执行 python 脚本时 Cron 作业失败 - keyError

问题描述

我的 cron 工作:

*/2 * * * * /usr/local/bin/python3.7 /path/to/python/script.py >> /path/to/my/log.txt 2>&1

每次运行此作业时,它都会在我的log.txt

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                             Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100    62  100    62    0     0     40      0  0:00:01  0:00:01 --:--:--    40
Traceback (most recent call last):
  File "/path/to/python/script.py", line 16, in <module>
    token = get_token(user)
  File "/path/to/python/script.py", line 14, in get_token(user)
    return json.loads(subprocess.check_output(['path/to/my/login.sh', 'PROD', 'my-tokenservice', user]))['myToken']
KeyError: 'myToken'

脚本.py:

user ='username'


def get_token(user):
    return json.loads(subprocess.check_output(['path/to/my/login.sh', 'PROD', 'my-tokenservice', user]))['myToken']

token = get_token(user)

...

在 python idle 中在 cron 之外运行脚本时,它工作得非常好。有人知道如何解决这个问题吗?先感谢您!

标签: pythoncroncron-task

解决方案


推荐阅读