Python脚本在pythonw下失败

时间:2015-11-21 14:11:05

标签: python pythonw

我在Windows 7上运行Python 3.3。当我这样称呼它时,我有一个成功的脚本:

c:\python33\python.exe my_script.py

但是当我这样称呼它时失败了:

c:\python33\pythonw.exe my_script.py

我希望使用pythonw定期启动它,因为它应该每小时运行一次,而且每次启动时我都不希望看到丑陋的控制台窗口。

(我知道脚本在pythonw下失败了,因为(a。)它会立即退出,大约需要两分钟,而(b。)它应该发送一封电子邮件,但它不会。)

我如何调试它?由于pythonw没有显示任何输出,我不知道该怎么做。

1 个答案:

答案 0 :(得分:2)

您可以将顶级代码包装在记录异常的try-except处理程序中:

import logging

logging.basicConfig(filename=r'C:\TEMP\debug.log', level=logging.DEBUG)
try:
    # top-level code
except:
    logging.exception('Danger, Robinson!')
    raise

您可以添加其他日志记录调用,您可以创建一个日志记录对象,以便对配置进行更细粒度的控制等,但作为第一步,这就是我&# 39; d do。

如果程序仍然是insta-exit,则开始二等分。删除一半代码,比较删除另一半(允许依赖)。如果一半中断并且另一半工作(在缺少一半代码的约束内),那么您知道继续搜索的位置。