如何在Python Selenium自动化中保存麦克风权限设置且不启动录音
解决方案
核心修改点如下:
- 修正麦克风权限默认配置
你当前代码中将profile.default_content_setting_values.media_stream_mic设为2,对应的是阻止麦克风权限,这就是浏览器不断弹出授权请求的原因。将值修改为1即可让Chrome默认对站点授予麦克风权限,不会再弹出授权弹窗,满足你必须授予权限的要求。 - 保留虚拟媒体流参数的注释状态
你注释的use-fake-device-for-media-stream和use-fake-ui-for-media-stream两个参数的作用是调用Chrome的虚拟音视频设备,启用后必然会触发录制流程,所以不需要取消注释这两行。 - 新增禁用音频输入参数
添加--disable-audio-input启动参数,该参数会禁用Chrome的所有音频输入设备,即使站点拿到麦克风权限,也无法捕获任何音频输入,不会触发录音行为,也不会占用真实麦克风。
修改后对应代码片段
# 只需要修改和新增这两处配置即可 # 1. 麦克风权限从2改为1 chrome_options.add_experimental_option("prefs",{\ "profile.default_content_setting_values.media_stream_mic" : 1}) # 2. 新增禁用音频输入参数 chrome_options.add_argument('--disable-audio-input')
其他原有配置不需要改动,即可实现:无麦克风授权弹窗、站点能拿到麦克风权限、不会触发任何录音流程的效果。
内容的提问来源于stack exchange,提问作者Daniel Vieira Meirelles
相关产品推荐
相关产品推荐

