【发布时间】:2017-01-04 19:26:40
【问题描述】:
在为 python 脚本调度任务时遇到了一些奇怪的问题。具体来说,这个脚本和问题是断断续续的,这让我很犹豫提出这个问题,因为我很困惑。我还有其他运行良好的预定脚本。这是唯一一个修改 SQLite 数据库的。
我每天都调用脚本,我已经通过多种方式完成了此操作,结果相同。我最终选择了 Action "start a program",Program/script: "python"(它在我的路径中,但我也直接调用了 py.exe 和 pyw.exe,结果相同)。添加参数:“scriptname.py”。从我在调度程序中使用的帐户具有完全读/写/执行访问权限的“脚本和数据库文件的位置”开始。而且我已经指示无论用户是否登录,它都能正常工作。
我对其他几个脚本使用相同的操作,它们很好,这个有时不起作用。它总是运行,但每隔几天它就会以代码 2147942401 而不是 0 退出。这几天数据库没有更新,所以我想它写起来有困难?我不知道。 windows中的这个错误代码似乎与无效功能有关,但我可以手动运行脚本,一切都很好。一半天(不完全是一半,似乎是随机的),它不起作用。这直到大约 3 周前才发生。我所知道的没有任何改变,几个月来一切都运行良好,然后 bam,退出代码 2147942401。它连续几天这样做,然后几天没有问题。手动运行任务(或脚本)永远不会有问题。它设置为以最高权限运行。
有人见过这样的吗?
【问题讨论】:
-
该错误代码向我表明您的 Python 脚本正在以错误代码 1 退出。您的 Python 脚本是否将任何日志消息、错误消息等写入任何地方的日志?如果没有,那将是接下来要做的事情。
-
我可以向它添加一些日志记录。它手动运行良好。所以脚本中没有错误,只是偶尔可能无法写入数据库?我将修改脚本以编写自己的日志并查看它是否无法完成。谢谢!
标签: python sqlite task scheduler exit