Python - 任务调度程序 0x1

问题描述 投票:0回答:7

在安排 Python 脚本 (C:\Python27 est.py) 时遇到了令人沮丧的时间,该脚本具有以下代码:

import xlrd
import csv
with xlrd.open_workbook('Z:/somefile.xls') as wb:
        sh = wb.sheet_by_index(3)
        with open('Z:/somefile.csv', 'wb') as f:
                c = csv.writer(f)
                for r in range(sh.nrows):
                    c.writerow(sh.row_values(r))

此脚本应该获取“somefile.xls”中的工作表 3 并将其保存到它自己的 .csv 文件中。当我从 Python Shell 手动运行它时,它按预期工作。

Z:\ 是位于完全不同的服务器上的映射驱动器。

当我尝试从任务计划程序运行时,我不断收到 0x1 结果代码。我的任务设置如下:

  • 无论用户是否登录都运行 - 不存储密码
  • 以最高权限运行
  • 程序/脚本:python.exe
  • 添加参数(可选):“test.py”
  • 开始于(可选):C:\Python27

我读了很多帖子,都有不同的建议,但没有一个有效。

还有其他人遇到过这种情况吗?

杰夫

python excel csv scheduled-tasks
7个回答
8
投票

几周前我遇到了这个问题,任务计划程序真的很痛苦!

无论出于何种原因,当选择“无论用户是否登录都运行”选项时,我始终无法运行脚本。我花了大约 10 个小时与 IT 部门通电话试图解决这个问题。这是不可能的。取消选中该选项应该允许您的脚本运行。


1
投票

我也遇到了同样的问题,也许你可以尝试以下配置:

  • 程序/脚本:C:\Python27\python.exe(程序可执行文件的完整路径)
  • 添加参数(可选):test.py(要运行的文件的名称)
  • 开始于(可选):C:\Python27(文件所在文件夹的完整路径)

这个配置对我有用。希望这有帮助。


1
投票

我遇到了同样的问题,并尝试了上述所有方法,但没有成功。

我的配置(像这样):

  • 程序/脚本:
    python.exe
  • 添加参数(可选):
    D:\test.py
  • 开始于(可选):
    C:\Python37\

最后,我发现我在 python 脚本中读取了该文件

pd.read_excel("./xlsx/XXX.xlsx")

我以为它会指向“

D:/xlsx/XXX.xlsx
”,但事实并非如此。我更改了脚本中的代码:

pd.read_excel("D:/xlsx/XXX.xlsx")

它对我有用。


0
投票

我也遇到了同样的问题: 但问题是因为路径单词之间有空格。 “C:/ python / pythonw.exe”“E:\ python \ Sales prog \ sales prog111.py” 我做了: “C:/ python / pythonw.exe”“E:\ python \ Salesprog \ salesprog111.py”


0
投票

我在尝试以其他用户权限运行时遇到了类似的问题。 我最终使用“另一个用户”帐户登录服务器,发现该用户的 python 模块丢失了。

我使用命令行与该用户运行 .py 脚本,并使用 pip 为该用户安装了所有缺少的模块。

然后一切开始完美运行。


0
投票

对于任何使用虚拟环境遇到此问题的人:

  1. 转到
    your_project_folder\your_venv\Scripts
    并找到
    python.exe
  2. 复制其完整路径
  3. 将其用作任务计划程序中“程序/脚本”选项的可执行文件(不是您可能使用
    where python
    找到的标准 Python 安装位置)

这将使用包含所有包的 Python 实例来运行代码,而不是全局安装的 Python 版本,后者可能包含也可能不包含它们。因此,它应该可以防止因缺少软件包而导致的错误,这可能是导致

(0x1)
错误的常见原因。

另一种解决方案是在您的计算机上全局安装所有必需的软件包,但一般来说,这不是一个很好的做法。

注意:可能还有其他原因导致

(0x1)
错误,例如代码中存在错误,但如果一切顺利并且您无法从任务计划程序运行脚本,这应该为你解决。

希望这有帮助!


0
投票

如果您正在使用的目录中有多个 Python 脚本,也可能会出现此问题。 Python 终端将打开半秒,然后因运行时错误而关闭。

如果目录中只有一个脚本,并将另一个脚本放入不同的目录中,则计划任务将按预期执行。

© www.soinside.com 2019 - 2024. All rights reserved.