本文介绍windows10环境下配置python脚本定时自动执行,最近碰到这么一个问题,我写了一个python脚本需要填写验证码,我人工运行该脚本工作正常,但是配置成windows计划定时执行,却在实际运行中发现,首先是不会弹出黑框命令行,也没有selenium的浏览器运行效果,从windows任务管理器进去可以看到python.exe进程也一直卡在那没有退出,翻阅脚本运行log文件发现它是有在运行的,但就是填写验证码老是失败。我打开了那个验证码截图的保存目录观测到,在任务管理器启动的python脚本时(后台运行),截取的验证码图片全部发生了位置偏离且截图大小也偏离的情况。
网上找了很多办法,包括把.py 程序放到一个.bat脚本里头去 python **.py 也还是不能令脚本浏览器在前台运转。终于偶然在 [添加链接描述](http://www.juguw.net/article-3133.html) 看到了这个魔鬼细节,把python 挪回前台执行了。现予以转载记录,方便自己查阅。
经过多次反复试验,终于找到了原因,现将相关的配置整理出来。
创建一个Python脚本,输入相应的代码,示例如下:
打开windows的任务计划,创建任务,相关的流程这里就不细述,有两点需要注意:
1、“编辑操作”时,如下设置操作
2、“常规”-“安全选项”,要设置成“只在用户登录时执行”,如下图:
属性窗口2
如果设置成“不管用户是否登录都要运行”,它就会以隐藏界面的方式执行。(selenium在执行部分截图命令时,会因为没有界面而出现抓取元素时失真(即图片没有加载,且原来需要的那个元素长宽坐标都会发生偏离。这一点在填写验证码时影响较大))
最终效果如下图: