Можно не придумывать велосипеды, а использовать постоянный профиль.
Оба варианта
рабочие 100 пистонов!
Проверял лично на Linux Mint 19.3 и Windows 10 20H2.
Если при запуске профиля не существует, chrome сам его создает. При закрытии профиль сохраняется и при следующем запуске подхватывает его со всеми настройками и расширениями.
Код (для Linux):
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("user-data-dir=/home/sergey/SeleniumProfile")
driver = webdriver.Chrome(chrome_options=options)
driver.get("https://google.com")
Запускаете его, он создает профиль. Далее в браузере идете в магазин с расширениями и устанавливаете себе любые расширения. Все! При следующем запуске кода selenium будет использовать данный профиль вместе с расширениями.
Вот код для Windows:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("user-data-dir=C:\\profile")
driver = webdriver.Chrome(chrome_options=options)
driver.get("https://google.com")