自排 Python 脚本
Self scheduled Python script
我正在编写一个 Python 脚本,该脚本调用一个从 wiki 工具 Confluence 导出和导入空间的函数。它必须每天 运行,但我们不能使用 cron,所以我正在寻找一种由她自己安排的方法。
我创建了以下内容。我已经可以安排到第二天了,但不能再安排到第二天了..
#!/usr/bin/python
from __future__ import print_function
from sys import argv
from datetime import datetime
from threading import Timer
import sys,os,subprocess
import getpass
from subprocess import PIPE,Popen
date = (os.popen("date +\"%d-%m-%y - %T\""))
x=datetime.today()
y=x.replace(day=x.day+1, hour=13, minute=56, second=0, microsecond=0)
delta_t=y-x
secs=delta_t.seconds+1
def runExport():
# HERE IS ALL THE CODE THAT HAS TO RUN EVERYDAY
t = Timer(secs, runExport)
t.start()
有人可以帮帮我吗?该脚本必须每天 运行,例如凌晨 5 点。
python 的版本是 2.6.6。遗憾的是没有导入模块的选项..
谢谢!
我建议使用一些比你在那里做的更简单的东西。 python 中有一个名为 sched 的简单调度库,可在此处找到:https://docs.python.org/2/library/sched.html
将其用于您的工具的一个简单示例:
import sched, time
s = sched.scheduler(time.time, time.sleep)
delay_seconds = 5
def print_time():
print time.time()
s.enter(delay_seconds,1,print_time,argument=())
s.enter(delay_seconds,1,print_time,argument=())
s.run()
这段代码会运行每5秒,打印出当前时间。只需将 delay_seconds 更改为您希望间隔 运行 的延迟即可。
抱歉,您不能为此简单地使用 Windows 任务计划程序吗?
http://www.sevenforums.com/tutorials/11949-elevated-program-shortcut-without-uac-prompt-create.html
我正在编写一个 Python 脚本,该脚本调用一个从 wiki 工具 Confluence 导出和导入空间的函数。它必须每天 运行,但我们不能使用 cron,所以我正在寻找一种由她自己安排的方法。
我创建了以下内容。我已经可以安排到第二天了,但不能再安排到第二天了..
#!/usr/bin/python
from __future__ import print_function
from sys import argv
from datetime import datetime
from threading import Timer
import sys,os,subprocess
import getpass
from subprocess import PIPE,Popen
date = (os.popen("date +\"%d-%m-%y - %T\""))
x=datetime.today()
y=x.replace(day=x.day+1, hour=13, minute=56, second=0, microsecond=0)
delta_t=y-x
secs=delta_t.seconds+1
def runExport():
# HERE IS ALL THE CODE THAT HAS TO RUN EVERYDAY
t = Timer(secs, runExport)
t.start()
有人可以帮帮我吗?该脚本必须每天 运行,例如凌晨 5 点。
python 的版本是 2.6.6。遗憾的是没有导入模块的选项..
谢谢!
我建议使用一些比你在那里做的更简单的东西。 python 中有一个名为 sched 的简单调度库,可在此处找到:https://docs.python.org/2/library/sched.html
将其用于您的工具的一个简单示例:
import sched, time
s = sched.scheduler(time.time, time.sleep)
delay_seconds = 5
def print_time():
print time.time()
s.enter(delay_seconds,1,print_time,argument=())
s.enter(delay_seconds,1,print_time,argument=())
s.run()
这段代码会运行每5秒,打印出当前时间。只需将 delay_seconds 更改为您希望间隔 运行 的延迟即可。
抱歉,您不能为此简单地使用 Windows 任务计划程序吗?
http://www.sevenforums.com/tutorials/11949-elevated-program-shortcut-without-uac-prompt-create.html