【问题标题】:How to open Firefox Developer Edition through Selenium如何通过 Selenium 打开 Firefox 开发者版
【发布时间】:2019-07-12 06:35:06
【问题描述】:

按照 Selenium 的一些教程,我安装了 geckodriver。为了在 python 上运行一个简单的代码来运行 Selenium,我必须在命令行中指定这个路径:

export PATH=$PATH:/home/xx/Downloads/geckodriver-v0.24.0-linux64

但我希望 Selenium 打开我拥有的开发人员版本,因为它包含我要测试的扩展: 当我为开发者版可执行文件指定路径时:

export PATH=$PATH:/home/xx/Documents/ff_extension/firefox/

然后运行我的python脚本:

from selenium import webdriver
browser = webdriver.Firefox()

Selenium 仍会打开 geckodriver 浏览器。

问:如何指示 Selenium 运行 Firefox Dev。我指定的路径中的版本?

【问题讨论】:

    标签: selenium selenium-webdriver geckodriver selenium-firefoxdriver firefox-developer-edition


    【解决方案1】:

    Firefox 开发者版 浏览器没有安装在常规 Firefox 浏览器安装的常规位置。在我的 Windows 8 框中 Firefox Developer Edition 浏览器安装在目录中:

    C:\Program Files\Firefox Developer Edition
    

    现在,在调用 Firefox Developer Edition 浏览器时,您需要通过参数 传递 Firefox Developer Edition 二进制文件的绝对路径 >firefox_binary如下:

    • 代码块:

      from selenium import webdriver
      from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
      
      firefox_dev_binary = FirefoxBinary(r'C:\Program Files\Firefox Developer Edition\firefox.exe')
      driver = webdriver.Firefox(firefox_binary=firefox_dev_binary, executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe')
      driver.get('https://www.google.co.in')
      print("Page Title is : %s" %driver.title)
      # driver.quit()
      
    • 控制台输出:

      Page Title is : Google
      
    • 浏览器快照:


    这个用例

    当你在 Linux 上时,你需要提供 absolute 路径:

    • Firefox 开发者版二进制
    • GeckoDriver 二进制

    所以你的有效代码块将是:

    from selenium import webdriver
    from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
    
    firefox_dev_binary = FirefoxBinary('/path/to/Firefox Developer Edition/firefox')
    driver = webdriver.Firefox(firefox_binary=firefox_dev_binary, executable_path='/home/xx/Downloads/geckodriver-v0.24.0-linux64/geckodriver')
    driver.get('https://www.google.co.in')
    print("Page Title is : %s" %driver.title)
    # driver.quit()
    

    【讨论】:

      【解决方案2】:

      您可以使用FirefoxBinary,如下所述: Setting path to firefox binary on windows with selenium webdriver

      要设置 Firefox 的自定义路径,您需要使用 FirefoxBinary:

      from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
      
      binary = FirefoxBinary('F:\FirefoxPortable\Firefox.exe')
      driver = webdriver.Firefox(firefox_binary=binary)
      

      【讨论】:

        猜你喜欢
        • 2022-06-18
        • 1970-01-01
        • 1970-01-01
        • 2021-02-06
        • 2017-05-21
        • 1970-01-01
        • 2016-08-21
        • 1970-01-01
        • 2018-12-20
        相关资源
        最近更新 更多