我是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'
答案 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-crontabpip install python-crontab --upgrade
或者从here下载1.9.3版本并安装它。
如果您想使用旧版本,可以传递username
作为参数,示例 -
cron = CronTab('<username>')