Search code examples
pythonfirefoxseleniumfirefox-addon

Unable to load firefox Add ons in python selenium


I want to Load Zenmate Firefox Addons when selenium webdriver runs it runs fine when i run without loading any addons ( extensions ) but having problem while adding any addons . Here is my Code :

def __init__(self):   

        self.main_catag_driver = []
        self.declare_xpaths()
        self.main_web_url = "Some_website_url"
        self.path_fire_fox_file = "~/.mozilla/firefox/7rl1aw4c.default/extensions/firefox@zenmate.com.xpi"
        self.driver = webdriver.Firefox()
        self.driver.add_extension(extension=self.path_fire_fox_file)
        time.sleep(5)
        self.driver.get(self.main_web_url)

Error when loading Bar :

Traceback (most recent call last):
  File "scrap.py", line 73, in <module>
    obj = carandclassic()
  File "scrap.py", line 28, in __init__
    self.driver.add_extension(extension=self.path_fire_fox_file)
AttributeError: 'WebDriver' object has no attribute 'add_extension'

Solution

  • add_extension() is a method on FirefoxProfile, not WebDriver:

    profile = webdriver.FirefoxProfile()
    profile.add_extension(extension=self.path_fire_fox_file)
    
    self.driver = webdriver.Firefox(profile)
    

    Plus, I'm not sure if you really need that time.sleep(5) call - try without wasting 5 seconds.