【发布时间】:2012-09-23 19:28:27
【问题描述】:
Selenium documentation 提到 Chrome 网络驱动程序可以采用 ChromeOptions 的实例,但我不知道如何创建 ChromeOptions。
我希望将 --disable-extensions 标志传递给 Chrome。
【问题讨论】:
标签: python google-chrome selenium selenium-chromedriver
Selenium documentation 提到 Chrome 网络驱动程序可以采用 ChromeOptions 的实例,但我不知道如何创建 ChromeOptions。
我希望将 --disable-extensions 标志传递给 Chrome。
【问题讨论】:
标签: python google-chrome selenium selenium-chromedriver
找到chrome Options class in the Selenium source code。
用于创建Chrome驱动实例:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument("--disable-extensions")
driver = webdriver.Chrome(chrome_options=chrome_options)
【讨论】:
chrome_options.add_argument("--js-flags=--harmony")
chrome_options arg 现在已弃用,取而代之的是更简单的 options,例如:driver = webdriver.Chrome(options=chrome_options)
chrome_options.add_argument("--enable-extensions") 来启用所有扩展,而不是通过(代码)手动添加每个扩展吗?提前致谢!
我就是这样做的。
from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--disable-extensions')
chrome = webdriver.Chrome(chrome_options=chrome_options)
【讨论】:
为那些使用 DesiredCapabilities 设置浏览器标志的人禁用 chrome 扩展的代码:
desired_capabilities['chromeOptions'] = {
"args": ["--disable-extensions"],
"extensions": []
}
webdriver.Chrome(desired_capabilities=desired_capabilities)
【讨论】:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('--disable-logging')
# Update your desired_capabilities dict withe extra options.
desired_capabilities.update(options.to_capabilities())
driver = webdriver.Remote(desired_capabilities=options.to_capabilities())
desired_capabilities 和 options.to_capabilities() 都是字典。您可以使用 dict.update() 方法将 options 添加到主集。
【讨论】: