![]() |
深沉的黑框眼镜 · python - ...· 16 小时前 · |
![]() |
听话的硬盘 · spark import ...· 10 月前 · |
![]() |
乖乖的风衣 · electron安装+运行+打包成桌面应用+ ...· 1 年前 · |
![]() |
踢足球的镜子 · ffmpeg 禁用默认字幕· 1 年前 · |
![]() |
稳重的钥匙扣 · 《Python极客项目编程 ...· 1 年前 · |
![]() |
无邪的黄花菜 · pyqt5使用多进程-掘金· 1 年前 · |
python 谷歌浏览器 selenium webdriver |
https://cloud.tencent.com/developer/ask/sof/175696/answer/101901922/comments |
![]() |
沉着的脸盆
1 年前 |
在selenium执行完我的测试脚本后,我试图让chrome浏览器保持打开状态。我想重新使用同一个窗口来运行我的第二个脚本。
当您的Chrome webdriver实例变量被垃圾回收时,浏览器窗口将关闭。如果您希望在脚本执行完成时也能避免这种情况,可以将其设置为全局的。即:
def test():
global driver # this will prevent the driver variable from being garbage collected
driver = webdriver.Chrome()
...
说明:
selenium.webdriver.Chrome
类实例包含
Service
类的实例。后者有一个
__del__
方法,当实例在垃圾收集过程中被析构时会调用该方法。该方法反过来会停止服务,并导致Chrome浏览器窗口关闭。
这也解释了为什么有些用户没有注意到这一行为。我怀疑这是因为他们在文件范围内有Chrome webdriver实例变量,而不是在函数内部。
Copyright © 2013 - 2023 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号: 粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
扫码关注腾讯云开发者
领取腾讯云代金券