2
if __name__ == '__main__':
 driver=webdriver.Firefox(executable_path=r'/home/saurabh/Saurabh/LearnPython/Automation/geckodriver');

After running the above code I am getting an error as :

selenium.common.exceptions.WebDriverException: Message: Unable to find a matching set of capabilities
undetected Selenium
  • 183,867
  • 41
  • 278
  • 352
Saurabh Garg
  • 199
  • 7
  • 22

2 Answers2

2

I don't see any significant error in your code as such.

It is to be noted that the current Selenium-Python binding is unstable with geckodriver and looks to be Architecture specific. You can find the github discussion and merge here. So you may additionally need to pass the absolute path of the firefox binary as firefox_binary argument while initializing the webdriver

Here is your own code with a simple tweak which opens the Mozilla Firefox browser:

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

if __name__ == '__main__':

    binary = FirefoxBinary('C:\\Program Files\\Mozilla Firefox\\firefox.exe')
    driver = webdriver.Firefox(firefox_binary=binary, executable_path="C:\\path\\to\\geckodriver.exe")
undetected Selenium
  • 183,867
  • 41
  • 278
  • 352
2

Make sur you are pointing to \path\to\FirefoxPortable\App\Firefox64\firefox.exe and not just \path\to\FirefoxPortable\FirefoxPortable.exe

Megacier
  • 394
  • 4
  • 9