python - 检查使用 Selenium 打开的浏览器是否仍在运行(Python)
问题描述
我想检查用 Selenium 打开的浏览器是否仍然打开。我需要这个检查来关闭一个程序。如果浏览器没有打开,那么 GUI 应该在没有消息 (tk.messagebox) 的情况下被销毁。但是如果浏览器是打开的,那么该功能一激活就会出现消息。
这是功能:
def close():
msg_box = tk.messagebox.askquestion('Exit Application', 'Are you sure you want to exit the application?',
icon='warning')
if msg_box == 'yes':
root.destroy()
try:
web.close()
except NameError:
sys.exit(1)
except InvalidSessionIdException:
sys.exit(1)
except WebDriverException:
sys.exit(1)
else:
return
解决方案
我认为没有用于检查浏览器状态的直接 api。但是您可以使用解决方法
def isBrowserAlive():
try:
driver.current_url
# or driver.title
return True
except:
return False
推荐阅读
- ios - 当用户填写一些文本字段时如何更新 UILabel 的文本
- javascript - 如何在点击时传输输入值
- c# - 在不与数据表帖子重叠的范围内查找最大的 TimeSpan
- jquery - 在一个函数中返回视图和 json 数据
- yii - Yii 上是否有任何无头 CMS?
- java - Java - 附加到循环中的文件或打印整个字符串
- javascript - 如何在laravel中显示弹出警报
- google-apps-script - Google 表格脚本在共享链接中不起作用
- macos - docker:来自守护程序的错误响应:安装被拒绝:
- amazon-web-services - 如何为 aws 日志组找到相应的资源?