Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Python webdriver manager для автоматизации управления драйверами

firefox
chrome
python
webdriver
Теги: #<Tag:0x00007f7b69a64d70> #<Tag:0x00007f7b69a64bb8> #<Tag:0x00007f7b69a64848> #<Tag:0x00007f7b69a64438>

(Sergey Pirogov) #1

Решил поделиться с сообществом наработкой:

О том как пользоваться можно пoчатать в README

python webdriver manager

The main ida is to simplify managemet of binary drivers for different browsers.

For now support:

  • ChromeDriver
  • GeckoDriver

Before:
You should download binary chromedriver, unzip it somwhere in you PC and set path to this driver like this:

webdriver.Chrome('/home/user/drivers/chromedriver')

It’s boring!!! Moreover every time the new version of driver released, you should go and repeat all steps again and again.

With webdriver manager, you just need to do two simple steps:

Install manager:

pip install webdriver_manager

Use with Chrome:

from webdriver_manager.chrome import ChromeDriverManager

webdriver.Chrome(ChromeDriverManager().install())

Use with FireFox:

from webdriver_manager.firefox import GeckoDriverManager

driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())

If you face arror related to github credentials, you need to place github token: (*)

driver = webdriver.Firefox(executable_path=GeckoDriverManager().use_token("adasdasdsads342").install())

(*) access_token requred to work with Github API more info https://help.github.com/articles/creating-an-access-token-for-command-line-use/

It will automatically download latest release of chromedriver and set path. Moreover when the new version of the driver
will be released, webriver manager will download it and update path.

This will make your test automation more elegant and robust!


(Lev Yarushin) #2

Спасибо ) Всё руки не доходили что-то похожее сделать.
Пользовался аналогом для NodeJS
https://www.npmjs.com/package/selenium-standalone


(Sergey Pirogov) #3

А как вы его с питоном дружили? Просто личный интерес


(Lev Yarushin) #4

Никак не дружил ) Просто скрипт запускал его перед тестами, и убивал после. При помощи PM2 - http://pm2.keymetrics.io/


(Sergey Pirogov) #5

Аа, ну вот теперь можно делать без костылей и велосипедов


(Dmitry Pakhilov) #6

Прошу прощения за вопрос от новичка, но в чем принципиальное отличие вот например от этого:

http://brewformulas.org/search?utf8=✓&search[term]=webdriver&commit=Search

?


(Sergey Pirogov) #7

То что вы прислали пакеты brew для установки драйверов, а драйвер менеджер - пайтон пакет для автоматизации установки тех же драйверов