系统:windows 7
引言
有些时候需要定期去执行一段程序,怎么办?这里提供一个方法,虽然有点绕,但效果还不错
时间控制部分使用vbs实现
思考:实验设计
目标:定期执行一个python程序
vbs脚本作为时间控制部分,定期运行一个bat文件,bat文件再执行python文件
逻辑过程

代码
vbs部分
dim wshdim current_dir
dim run_mode
dim bat_addrmsgbox "此脚本旨在定期运行python语句"
set wsh = createobject("wscript.shell")
current_dir = wsh.currentdirectory
do while true
bat_addr = "run.bat"
wsh.run bat_addr, 0, true
wscript.sleep (2*1000) '休息2秒
loop
代码截图

bat部分
python main.py
python部分
import win32apiimport win32con win32api.messagebox(0, "python在运行", "提示", win32con.mb_ok)
代码截图

运行结果

代码解读
wsh.run bat_addr, 0, true,运行bat_addr命令
0,表示不显示运行窗口,如果写1,则显示运行窗口,如下图
true,表示是否等待后面程序执行完毕,再执行下面的语句,如果写false,效果如下,有一种中病毒的感觉
为什么采用这种方法呢?vbs这种方式定期运行,对电脑资源的消耗是非常小的。例如我的电脑,对cpu的消耗几乎为0,内存的消耗大概3000k,还是在接受的范围内(notepad++的内存消耗为20000k左右,只打开文中3个文件的情况下)
参数写1时,效果

false,效果

这篇文章就介绍到这了,如果这篇文章帮助到了你,希望你以后能继续支持代码网。
发表评论