1

我一直在编写一个脚本来自动执行 Google Chrome 中的任务。不幸的是,我没有任何运气让 Chrome 访问我的麦克风并拒绝访问通知。我试过使用Options().add_experimental_option()但没有任何运气。我做错了什么还是有其他方法?我曾尝试使用假 UI 和假媒体流来删除弹出窗口,但这也没有奏效。Options().add_argument("--use-fake-ui-for-media-stream"); Options().add_argument("--use-fake-device-for-media-stream")

import time
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver import ActionChains
from selenium.webdriver.chrome.options import Options

Options().binary_location = "C:\Program Files\Google\Chrome\Application\chrome.exe"
Options().add_argument("start-maximized");
Options().add_argument("--disable-infobars")
# 1 to allow, 2 to block
Options().add_experimental_option("prefs", { \
   "profile.default_content_setting_values.media_stream_mic": 1,
   "profile.default_content_setting_values.media_stream_camera": 2,
   "profile.default_content_setting_values.geolocation": 2,
   "profile.default_content_setting_values.notifications": 2
})
driver=webdriver.Chrome(".\chromedriver.exe", options=Options())
4

1 回答 1

1

在启动ChromeDriver / 组合时,您需要在单个实例中添加所有属性参数实验选项Options,并作为参数传递,如下所示:

import time
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver import ActionChains
from selenium.webdriver.chrome.options import Options

options = Options()
options.binary_location = "C:\Program Files\Google\Chrome\Application\chrome.exe"
options.add_argument("start-maximized")
options.add_argument("--disable-infobars")
# 1 to allow, 2 to block
options.add_experimental_option("prefs", { \
   "profile.default_content_setting_values.media_stream_mic": 1,
   "profile.default_content_setting_values.media_stream_camera": 2,
   "profile.default_content_setting_values.geolocation": 2,
   "profile.default_content_setting_values.notifications": 2
})
driver=webdriver.Chrome(".\chromedriver.exe", options=options)

参考

您可以在以下位置找到一些相关的详细讨论:

于 2021-01-21T20:19:39.083 回答