我是Python新手,所以不能确定问题出在哪里:在PyWinAuto中还是在我对Python的知识中。在
我运行下一个脚本Windows(python3.5.2):
#!/usr/bin/env python3
import os
import sys
import pywinauto
def testLicenseForm():
app = pywinauto.Application().Start('Calc.exe')
try:
LicenseForm = app['Nonsense name']
LicenseForm.OK.Click()
# raise pywinauto.findbestmatch.MatchError
# raise pywinauto.timings.TimeoutError
except (pywinauto.timings.TimeoutError, pywinauto.findbestmatch.MatchError) as e:
f = open('R:\Temp\diagnostic\log.errors', 'w')
f.write('Exception raised')
sys.exit('Error in script'.format(__file__))
if __name__ == '__main__':
testLicenseForm()
问题是日志.错误已创建,但为空。如果我像这样更改代码:
^{pr2}$在日志.错误文件已创建,其中包含预期的文本。 不知道问题出在哪里。如果pywinauto抛出异常,如何更改脚本以将一些信息写入文件。在
在关闭文件(
f.close()
)或执行f.flush()
之前,f.write
不保证写入数据。但我建议你用以下方式:此上下文管理器将在退出
with
节时自动关闭文件。即使在with
内引发异常,文件也保证关闭。在相关问题 更多 >
编程相关推荐