我用python编写了一个GUI自动化脚本,它打开一个web浏览器,在浏览器中执行一些测试,然后关闭浏览器。它是在一个循环中完成的,经过数十万次迭代。在
我遇到过这样的问题:程序会挂起,我无法打开浏览器实例,或者有时最多打开20个实例。 我想创建一个错误检查,以确保一次只打开一个浏览器实例(如果有许多实例打开,则完全关闭浏览器并重新启动迭代,和/或在循环迭代之前确保浏览器实例处于打开状态)。在
浏览器的PID在循环的每次迭代中都会发生明显的变化,据我所知,没有办法分配PID。 我想到的另一个解决方案是对终端进行系统调用,并以某种方式利用tasklist和taskkill命令,但仍然没有找到一种方法来做我想要的。在
如有任何建议,我们将不胜感激!在
更新:
我知道我可以按名称搜索windows进程,但我如何将其放入一个布尔表达式中
if tasklist contains firefox.exe
taskkill firefox.exe
else
open firefox
第二次更新:
我可以用Ruby编写以下代码,这很有用:
^{pr2}$如何在Python中实现这一点?在
我正在寻找的答案:
b = (str(os.system('tasklist | find "firefox.exe"')))
if b == '1':
b = 'false'
elif b == '0':
b = 'true'
print b
我也做过类似的事情
我想你可能想要皮温汽车
如果你的windownamehere没有打开,这将引发一个异常
编辑:实际上,对于firefox或chrome,只有当“YOURWINDOWNAMEHERE”是你所在的页面时才有效,例如这个页面是“python—我如何编程…”
如果它找到它,它将返回一个int,据我所知,这个int应该能够引用窗口。在
在例子:。在
^{pr2}$我用Java的loglogger(logloggill)在这个窗口中使用了javalogger来杀死它:
以及使用文件名的模拟器:
^{pr2}$在你的案子里应该有用。在
相关问题 更多 >
编程相关推荐