现在我有一些脚本,我想自动定期运行,比如说,每两天运行一次
我的组织方式是这样的
脚本1:
def example1():
#Some Selenium code
example1()
脚本2:
def example2():
#Some more Selenium code
example2()
脚本3:
import Script1
import Script2
您会注意到,'Script1'和'Script2'已经调用了它们的主函数,因此在'Script3'中,我只需要导入脚本,而不需要调用函数(虽然这对我来说很有效,但我不确定这是否是一种安全的方法/良好的做法)
我的问题:如果我使用schedule每x天运行一次“Script3”,这意味着脚本将永远运行,还是每x天运行一次,然后进入睡眠模式,直到必须再次运行?而且,要让它运行,就需要电脑一直开机,对吗
如果是这样的话,有没有办法让它在电脑关机的情况下自动定期运行
提前谢谢
Python的禅宗说;“显式优于隐式。”因此最好使用:
通常不建议模块在导入时运行代码。导入模块最好不要有副作用
可能有不止一个名为“schedule”的程序。你能说得更具体些吗
定期运行脚本的方法不止一种。像Linux这样的类UNIX系统有
cron
和atrun
。 其他系统有自己的方式但所有这些只有在机器打开时才起作用。在没有额外硬件的PC上,定期开机通常是不可能的。除非你能得到Intel Management Engine做你的出价
像ESP32这样的微控制器(可以运行
micropython
)确实有“深度睡眠”模式用于此目的,但我有点怀疑它们是否可以运行selenium.:-)我想Windows调度器的工作方式与linux中的cron作业相同。因此,事实上,在创建“任务”之后,windows会每秒检查一次,看他是否需要执行任何任务。但这是一直在做的,所以这对性能没有影响,如果这是您所担心的。那么我想澄清一下:
即使在关闭电脑的情况下也要这样做,这是不可能的
如果您在Linux或任何其他基于Unix的操作系统上,则可以使用Cron进行作业调度。但是,如果在cron作业运行时关闭,系统将关闭,cron作业将停止(或不运行)
您可以选择anacron
相关问题 更多 >
编程相关推荐