【问题标题】:How to schedule a python script to run from virtual environment via task scheduler如何通过任务调度程序调度 python 脚本从虚拟环境运行
【发布时间】:2019-08-07 15:21:44
【问题描述】:

我偶然发现了一个基本上完全相同的问题的答案,但要么我实施的解决方案错误,解决方案不再准确,要么存在其他问题。

Run a python script in virtual environment from windows task scheduler

我使用上面链接中的代码,为我的目录编辑,并直接复制到任务调度程序/脚本提示符中。

C:\Users\I511843\myenv\activate.bat && python C:\Users\I511843\Desktop\Atom_scripts\test.py

然后我将程序设置为每次解锁机器时运行。该程序只是编写一个名为 test.txt 的文本文件,其中包含文本“success!”

当我从命令行运行时,文本文件会填充到正确的目录中,但是,程序不会从任务调度程序中执行。

【问题讨论】:

  • 虚拟环境不必被激活。在环境中直接运行“python.exe”的完全限定路径。不需要批处理脚本。

标签: python windows scheduled-tasks


【解决方案1】:

您是否尝试将命令放入批处理文件并从任务调度程序执行批处理文件?如下所示:

C:\Users\I511843\myenv\activate.bat && python C:\Users\I511843\Desktop\Atom_scripts\test.py 进入 task.bat 文件。

在任务调度器中,从 cmd 运行 task.bat

【讨论】:

  • 我试过这个,这是朝着正确方向迈出的一步,但我相信上面的代码sn-p仍然有错误。例如,activate.bat && python 中可能存在问题 - 我不确定.bat 在批处理文件的上下文中做了什么。同样,我认为 python 仍然需要完整路径,而不是只需调用 python
  • activate.bat 将激活您的 python 虚拟环境。根据python,确保在环境变量中添加了 python 路径。不过,您介意评论一下您在采用这种方法后遇到的错误吗?
猜你喜欢
  • 2016-04-09
  • 1970-01-01
  • 2020-08-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多