在硒的文件中提到,在Chrome的webdriver可以采取的一个实例ChromeOptions
,但我无法弄清楚如何创建ChromeOptions
。
我希望将--disable-extensions
标志传递给Chrome。
Answers:
在Selenium源代码中找到了chrome Options类。
创建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
现在不建议使用arg,而是推荐使用更简单的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)
禁用chrome扩展的代码,这些代码使用DesiredCapabilities设置浏览器标志:
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()方法将选项添加到主集中。
chrome_options.add_argument("--js-flags=--harmony")