javascript - 如何在 Selenium 中立即调用 driver.quit()?
问题描述
每当我调用driver.quit()
它时,它都会等待网站首先完成加载然后关闭浏览器,有什么办法可以立即强制关闭浏览器?
解决方案
当您调用get()
使用Seleniumurl
时,许多操作会在后台发生,包括geckodriver 接收到的 HTTP 请求、发送到和从 Firefox 中的远程协议发送的数据包,以及发送回客户端的响应。
一旦基本的强制请求/响应成功完成,浏览器即客户端根据pageLoadStrategy将程序控制发送回Selenium以执行下一行代码。
现在pageLoadStrategy
可以是以下任何一种:
- normail:这种策略导致 Selenium 等待整个页面加载(下载和解析 html 内容和子资源)。
- eager:这种策略导致 Selenium 等待 DOMContentLoaded 事件(仅下载和解析 html 内容)。
- none:此策略导致 Selenium 在完全接收到初始页面内容(已下载 html 内容)后立即返回。
所以一旦程序控制基于pageLoadStrategy返回给Selenium ,这有点时间限制,那么只能执行。driver.quit()
推荐阅读
- ruby-on-rails - 当您处于创建新数据库条目的循环中时,批量插入数据库的最佳 ruby 实践是什么?
- regex - 如何从 shell 脚本的命令输出中提取值?
- node.js - 护照本地缺少凭据
- python - Django 覆盖范围不包括 APITestCase 测试
- python - 无法更新 Kivy-Mapview Python 上的标记
- azure-data-factory - 对于以 ADX 作为源的复制活动,ADF 不支持以 MB (100) 为单位的接收器块大小
- mysql - 使用 CONCAT 的 SQL 中的 CASE WHEN
- vuejs2 - axios.delete() 419 未知状态
- python-3.x - issubclass(typing.List, list) 引发 TypeError
- node.js - 尝试使用旧节点版本来实现 Firebase 兼容性