我想控制我的 WebDriver
是否退出但我找不到方法。 ( 似乎在Java中有一种方法可以做到)
from selenium import webdriver
driver = webdriver.Firefox()
driver.quit()
driver # <selenium.webdriver.firefox.webdriver.WebDriver object at 0x108424850>
driver is None # False
我还探索了 WebDriver
的属性,但我找不到任何特定方法来获取有关驱动程序状态的信息。同时检查会话 ID:
driver.session_id # u'7c171019-b24d-5a4d-84ef-9612856af71b'
原文由 CptNemo 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您探索 python-selenium 驱动程序的源代码,您会看到 firefox 驱动程序的
quit()
方法 在做什么:您可以在这里依赖一些东西:检查
profile.path
是否存在或检查binary.process
状态。它可以工作,但您还可以看到只有“外部调用”并且 python 端没有任何变化 可以帮助您指示quit()
被调用。换句话说,您需要进行外部调用以检查 _状态_:
您可以将其放在
try/except
下,并创建一个可重用的函数:用法:
另一种方法是 制作自定义 Firefox webdriver 并将
session_id
设置为None
在quit()
中:然后,您可以简单地检查
session_id
值: