python - 用于运行脚本的crontab

时间:2015-07-16 06:13:20

标签: python crontab

我是python的新手,我正在尝试通过python脚本创建一个cronjob但我一直收到错误。任何帮助都会非常感谢它向我展示我做错了什么?

感谢

python脚本

from crontab import CronTab

cron = CronTab(user=True)

job = cron.new(command='python /Users/<useraccount>/Desktop/my_script.py')
job.minute.on(2)
job.hour.on(12)

cron.write()

错误:

Traceback (most recent call last):
  File "/Users/<useraccount>/Desktop/01-python-crontab.py", line 3, in <module>
    cron = CronTab(user=True)
TypeError: __init__() got an unexpected keyword argument 'user'

2 个答案:

答案 0 :(得分:6)

以下是问题:

出现错误:TypeError: init ()正好接受2个参数

documentaton:https://pypi.python.org/pypi/python-crontab帮助解决了这个问题。

原因: 1 - crontab安装不是python-crontab

这是完成的代码:

def main(): 
    from crontab import CronTab

    cron = CronTab(user=True)

    job = cron.new(command='python /opt/my_script.py')
    job.minute.on(2)
    job.hour.on(12)

    cron.write()

if __name__ == "__main__":
  main()

答案 1 :(得分:2)

您可能正在使用旧版本的crontab(请参阅 - 1.4.1 here的文档)。您可以使用 -

升级到最新版本的python-crontab
pip install python-crontab --upgrade

或者从here下载1.9.3版本并安装它。

如果您想使用旧版本,可以传递username作为参数,示例 -

cron = CronTab('<username>')