You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac系统下使用Selenium无法关闭OS App Selector弹窗求解决方案

绕过MacOS下Zoom会议页OS应用选择弹窗的可行方案

方案1:直接使用Zoom网页入会链接(最优,完全规避弹窗)

Zoom的网页入会入口有独立的固定格式,不用走触发客户端唤起的流程:

  • 原始会议链接格式:https://zoom.us/j/[会议ID]
  • 直接替换为网页入会格式:https://zoom.us/wc/join/[会议ID]

如果会议设置了密码,直接把原链接的pwd参数完整拼接在后面即可,跳转后直接进入网页入会的信息填写页,完全不会触发OS应用选择弹窗。

方案2:修改Chromedriver启动参数拦截协议唤起弹窗

在初始化Chrome实例的时候添加以下启动参数,直接拦截Zoom的客户端唤起请求:

const { Builder } = require('selenium-webdriver');
const chrome = require('selenium-webdriver/chrome');

let options = new chrome.Options();
// 禁用Zoom相关协议的唤起请求弹窗
options.addArguments('--disable-external-protocol-handler-requests-for-urls=zoommtg://*,zoomus://*');
// 额外禁用外部协议弹窗的全局开关(可选补充)
options.addArguments('--disable-default-apps');
options.addArguments('--disable-external-protocol-requests');

let driver = await new Builder()
  .forBrowser('chrome')
  .setChromeOptions(options)
  .build();

该配置在Chrome 90及以上版本生效,启动后点击LAUNCH MEETING按钮也不会弹出OS应用选择窗口。

方案3:修复Mac下按键模拟失效问题

如果一定要保留原有按键模拟的逻辑,失效原因是MacOS的权限限制:

  • 打开系统设置>隐私与安全性>辅助功能
  • 在允许控制电脑的应用列表中,勾选你运行代码的终端(Terminal/iTerm等),如果是通过IDE启动则对应勾选IDE程序
  • 保存设置后重启终端/IDE和你的Node程序,node-key-sender等包的按键指令即可正常识别

内容的提问来源于stack exchange,提问作者Anonymous Australian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 13:57:02