我想在Python中添加这些选项,一个用于安装扩展,一个用于分离浏览器。
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
service_obj = Service("D:/Python/Chrome Driver/chromedriver.exe")
opt = webdriver.ChromeOptions()
opt.add_experimental_option("detach", True)
options = Options()
options.add_extension(r"C:\Users\enach\Downloads\extension_5_8_0_0.crx")
driver = webdriver.Chrome(service=service_obj, options=options, chrome_options = opt)
运行此代码后,出现此错误:
TypeError: WebDriver.__init__() got an unexpected keyword argument 'chrome_options'
我尝试制作多个选项,但不起作用。
经过多次尝试,我成功找到了解决方案。
service_obj = Service("D:/Python/Chrome Driver/chromedriver.exe")
options = Options()
options.add_extension(r"C:\Users\enach\Downloads\extension_5_8_0_0.crx")
options.add_experimental_option("detach", True)
driver = webdriver.Chrome(service=service_obj, options=options)
您可以在定义 options=Options() 后添加您想要的选项,并注意先导入
from selenium.webdriver.chrome.options import Options
。祝你好运,我希望找到有用的!
如果你有其他方法在 Python Selenium 中解决这个问题,我想听听。
由于selenium 4.10.0的变化:https://github.com/SeleniumHQ/selenium/commit/9f5801c82fb3be3d5850707c46c3f8176e3ccd8e
from selenium.webdriver.chrome.service import Service
options = webdriver.ChromeOptions()
options.add_argument('--ignore-certificate-errors')
options.add_argument('--incognito')
options.add_argument('--headless')
options.add_argument('--headless') # To run Chrome in headless mode
service = Service(executable_path='./chromedriver')
driver = webdriver.Chrome(service=service, options=options)