Как открыть Firefox Developer Edition через Selenium - PullRequest
0 голосов
/ 18 февраля 2019

Следуя некоторым учебникам по Selenium, я установил geckodriver.Чтобы запустить простой код на python для запуска Selenium, я должен указать этот путь в командной строке:

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

Но я хочу, чтобы Selenium открыл имеющуюся у меня редакцию Developer, поскольку она содержит расширение Iхочу проверить: Когда я разделяю путь для исполняемого файла Developer Edition:

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

Затем запускаю мой скрипт на python:

from selenium import webdriver
browser = webdriver.Firefox()

Selenium по-прежнему открывает браузер geckodriver.

В: Как я могу дать Selenium команду запускать Firefox Dev.Издание по указанному мной пути?

Ответы [ 2 ]

0 голосов
/ 19 февраля 2019

Браузер Firefox Developer Edition не установлен в обычном месте, где установлен обычный браузер 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
    
  • Снимок браузера:

Firefox-DeveloperEdition


Этот сценарий использования

Поскольку вы используете Linux , вам необходимо предоставить абсолют путь:

  • Firefox Developer Edition бинарный
  • 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()
0 голосов
/ 18 февраля 2019

Вы можете использовать FirefoxBinary, как описано здесь: Установка пути к бинарному файлу Firefox в Windows с помощью селенового веб-драйвера

Чтобы установить собственный путь к Firefox, вам необходимо использовать FirefoxBinary:

from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

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