Webdriver Manager for Python
The main idea is to simplify management of binary drivers for different browsers.
For now support:
-
ChromeDriver
-
GeckoDriver
-
IEDriver
-
OperaDriver
-
EdgeChromiumDriver
Before: You should download binary chromedriver, unzip it somewhere in you PC and set path to this driver like this:
webdriver.Chrome('/home/user/drivers/chromedriver')
ChromeDriverManager(path=custom_path).install()
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 selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
Use with Chromium:
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.utils import ChromeType
driver = webdriver.Chrome(ChromeDriverManager(chrome_type=ChromeType.CHROMIUM).install())
Use with FireFox:
from selenium import webdriver
from webdriver_manager.firefox import GeckoDriverManager
driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())
Use with IE
from selenium import webdriver
from webdriver_manager.microsoft import IEDriverManager
driver = webdriver.Ie(IEDriverManager().install())
Use with Edge
from selenium import webdriver
from webdriver_manager.microsoft import EdgeChromiumDriverManager
driver = webdriver.Edge(EdgeChromiumDriverManager().install())
Use with Opera
from selenium import webdriver
from webdriver_manager.opera import OperaDriverManager
driver = webdriver.Opera(executable_path=OperaDriverManager().install()
If the Opera browser is installed in a location other than C:/Program Files or C:/Program Files (x86) on windows and /usr/bin/opera for all unix variants and mac, then use the below code,
from selenium import webdriver
from webdriver_manager.opera import OperaDriverManager
options = webdriver.ChromeOptions()
options.add_argument('allow-elevated-browser')
options.binary_location = "C:\\Users\\USERNAME\\FOLDERLOCATION\\Opera\\VERSION\\opera.exe"
driver = webdriver.Opera(executable_path=OperaDriverManager().install(), options=options)
Configuration
If you face error related to github credentials, you need to place github token: (*)
Example:
export GH_TOKEN = "asdasdasdasd"
(*) access_token required to work with Github API more info https://help.github.com/articles/creating-an-access-token-for-command-line-use/.
There is also possibility to set same variables via ENV VARIABLES.
To silent webdriver_manager logs and remove them from console, initialize env variable WDM_LOG_LEVEL with '0' value before your selenium tests:
import os
os.environ['WDM_LOG_LEVEL'] = '0'
or via constructor:
ChromeDriverManager("2.26", log_level=0).install()
This will make your test automation more elegant and robust!
Release files for webdriver-manager 2.5.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| webdriver_manager-2.5.2-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Release files / webdriver_manager-2.5.2-py2.py3-none-any.whl
| Download URL | webdriver_manager-2.5.2-py2.py3-none-any.whl |
|---|---|
| Size | 15.5 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
89ff57f52b166e47ac157924c4d46926abc44bf510a7b9e905dd2a615e775586
|
|
BLAKE2b-256 checksum How to use checksums |
1b29af4793f66ba33b7534dabf73d73fcd17c962f9f0fbc638f5c8e14fb0077b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.20.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.10
|