Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to select Chrome extensions to enable when using Selenium [duplicate]

I am using Selenium web driver to develop an automated test using Chrome as my browser. I am using Python for this.

I have an extension on my Chrome browser that I would like enabled when Selenium opens Chrome. The problem is that when Selenium opens Chrome all the extensions are disabled by default.

How do I enable all or a certain extension on the Chrome browser when Selenium runs?

like image 850
SkyBlue Avatar asked Sep 28 '22 00:09

SkyBlue


1 Answers

You can accomplish this using ChromeOptions class or DesiredCapabilities. For that you have to have the .crx file and load that with driver instance.

import os
from selenium import webdriver
from selenium.webdriver.chrome.options import Options


executable_path = "path_to_webdriver"
os.environ["webdriver.chrome.driver"] = executable_path

chrome_options = Options()
chrome_options.add_extension('path_to_extension')

driver = webdriver.Chrome(executable_path=executable_path, chrome_options=chrome_options)
driver.get("http://stackoverflow.com")
driver.quit()

Code taken from @alecxe answer here and more details about ChromeOptions and DesiredCapabilities here

like image 59
Saifur Avatar answered Oct 18 '22 10:10

Saifur