由于某些未知原因,我的浏览器打开远程服务器的测试页面非常缓慢。所以我在想,如果我可以在退出脚本后重新连接到浏览器但不执行 webdriver.quit()
这将使浏览器保持打开状态。它可能是一种 HOOK 或 webdriver 句柄。我查阅了 selenium API 文档,但没有找到任何功能。我正在使用 Chrome 62、x64、windows 7、selenium 3.8.0。这个问题是否可以解决,我将不胜感激。
原文由 imbaiye 发布,翻译遵循 CC BY-SA 4.0 许可协议
不,退出脚本后无法重新连接到之前的 _Web 浏览会话_。即使您能够从先前的 浏览上下文 中提取
Session ID
、Cookies
和其他会话属性,您仍然无法将这些属性作为 HOOK 传递给 WebDriver 。一种更简洁的方法是调用
webdriver.quit()
然后跨越一个新的 Browsing Context 。深潜
已经有很多讨论和尝试将 WebDriver 重新连接到现有的正在运行的 Browsing Context 。在讨论 Allow webdriver to attach to a running browser Simon Stewart [Creator WebDriver] 中明确提到:
TL;博士
webdriver.firefox.useExisting 未实现