Windows 计划任务 + Python:让电脑在你睡觉时自动干活
一、先想清楚要自动化什么
很多重复性的电脑操作,其实都可以交给计划任务:每天定时备份数据、定时跑脚本整理文件、定时抓数据生成报表。Windows 自带的任务计划程序(Task Scheduler)加上一段 Python 脚本,就能把这些活全自动化。本文分享一个我实际在用的完整流程。
自动化的第一步不是写代码,而是拆解任务。以每天自动整理下载文件夹为例,拆开就是三步:找到目标文件(按扩展名和日期筛选)、按规则移动或重命名、记录日志方便排查。任何定时任务都可以拆成触发时间加处理逻辑两块。
二、写处理脚本
下面是一个最小可用的整理脚本 move_files.py:
import os, shutil, datetime
src = r"C:/Users/xxx/Downloads"
dst = r"D:/AutoArchive"
today = datetime.date.today().isoformat()
for f in os.listdir(src):
if f.lower().endswith((".zip", ".pdf")):
target = os.path.join(dst, today)
os.makedirs(target, exist_ok=True)
shutil.move(os.path.join(src, f), os.path.join(target, f))
print("moved:", f)
脚本不到 20 行:把下载目录里的 zip 和 pdf 挪到归档目录的当日子文件夹。先用 print 跑通逻辑,再考虑加日志模块。
三、配置计划任务
打开任务计划程序(Win+R 输入 taskschd.msc),右侧点创建基本任务,三步配置:触发器选每天,设一个电脑肯定开着的时间;操作选启动程序,程序填 python.exe 的完整路径,参数填脚本完整路径;条件一栏建议取消仅在使用交流电时启动,笔记本合盖也能跑。
命令行党也可以一行搞定:
schtasks /create /tn "AutoArchive" /tr "python D:/scripts/move_files.py" /sc daily /st 09:00
四、三个容易踩的坑
1. 路径用绝对路径。计划任务的工作目录不是脚本所在目录,相对路径大概率找不到文件。
2. 环境变量不一致。计划任务跑的 python 可能不是你终端里那个,脚本里引用第三方库前先用完整路径验证。
3. 先手动后定时。把命令原样在 cmd 里跑一遍确认无报错,再交给计划任务,否则失败了你连日志都没有。
五、延伸玩法
跑通这个模式后,可以叠加的东西很多:脚本开头加 requests 定时抓数据,中间接 pandas 做汇总,结尾用 smtplib 把结果邮件发给自己,一套定时取数、处理、推送的流水线就成型了。自动化的本质不是炫技,而是把每天重复的动作固化成规则,把注意力留给真正需要人判断的部分。
- 点赞
- 收藏
- 关注作者
评论(0)