
Security News
Crates.io Implements Trusted Publishing Support
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Python module and CLI tool for facilitating download and deploy of WebDriver binaries.
webdriverdownloader
Python module to facilitate downloading and deploying WebDriver <https://www.w3.org/TR/webdriver/>
_
binaries. The classes in this module can be used to automatically search for
and download the latest version (or a specific version) of a WebDriver binary
(will download to $HOME/webdriver
or /usr/local/webdriver
if run with
sudo
), extract the binary from the downloaded archive and create a symlink
in either /usr/local/bin
(if run with sudo
) or $HOME/bin
.
Note: For non-root users, the $HOME/bin
directory may not be in the search
PATH. If you are unable to add this directory your search path, a workaround
is to capture the return value from the download()
or download_and_install()
method (see the docstrings for those methods for more information on the return
values) and pass the path to the downloaded webdriver binary as a parameter to
the constructor for the Selenium WebDriver instance. See the documentation for
the executable_path
parameter for the relevant WebDriver class for more
information.
This module is available on the Python Package Index (PyPI) and can be installed as follows:
pip install webdriverdownloader
This module is dependent on the following additional packages:
beautifulsoup4 <https://pypi.org/project/beautifulsoup4/>
_requests <https://pypi.org/project/requests/>
_tqdm <https://pypi.org/project/tqdm/>
_The following classes are available:
ChromeDriverDownloader
for downloading and installing chromedriver <https://sites.google.com/a/chromium.org/chromedriver/downloads>
_ (for Google Chrome).GeckoDriverDownloader
for downloading and installing geckodriver <https://github.com/mozilla/geckodriver>
_ (for Mozilla Firefox).OperaChromiumDriverDownloader
for downloading and installing operadriver <https://github.com/operasoftware/operachromiumdriver>
_ (for Chromium based Opera browsers).Currently being developed/tested using Python 2.7.16 and 3.8.1 on macOS and Windows 10.
Example::
from webdriverdownloader import GeckoDriverDownloader gdd = GeckoDriverDownloader() gdd.download_and_install() 1524kb [00:00, 1631.24kb/s] ('/Users/lsaguisag/webdriver/geckodriver-v0.20.1-macos/geckodriver', '/Users/lsaguisag/bin/geckodriver') gdd.download_and_install("v0.20.0") 1501kb [00:02, 678.92kb/s] Symlink /Users/lsaguisag/bin/geckodriver already exists and will be overwritten. ('/Users/lsaguisag/webdriver/geckodriver-v0.20.0-macos/geckodriver', '/Users/lsaguisag/bin/geckodriver') gdd.download_and_install() Symlink /Users/lsaguisag/bin/geckodriver already exists and will be overwritten. ('/Users/lsaguisag/webdriver/geckodriver-v0.20.1-macos/geckodriver', '/Users/lsaguisag/bin/geckodriver')
There is a command-line tool that is also available. After installing the package, it can be used as follows (Windows example)::
webdriverdownloader chrome:2.38 firefox opera:v.2.35 Downloading WebDriver for browser: 'chrome' 3300kb [00:00, 11216.38kb/s] Driver binary downloaded to: C:\Users\lsaguisag\webdriver\chrome\2.38\2.38%2Fchromedriver_win32\chromedriver.exe Driver copied to: C:\Users\lsaguisag\bin\chromedriver.exe
Downloading WebDriver for browser: 'firefox' 3031kb [00:01, 2253.64kb/s] Driver binary downloaded to: C:\Users\lsaguisag\webdriver\gecko\v0.20.1\geckodriver-v0.20.1-win64\geckodriver.exe Driver copied to: C:\Users\lsaguisag\bin\geckodriver.exe
Downloading WebDriver for browser: 'opera' 3548kb [00:02, 1239.02kb/s] Driver binary downloaded to: C:\Users\lsaguisag\webdriver\operachromium\v.2.35\operadriver_win64\operadriver_win64\operadriver.exe Driver copied to: C:\Users\lsaguisag\bin\operadriver.exe
WARNING: Path 'C:\Users\lsaguisag\bin' is not in the PATH environment variable.
In the above example, a version was specified for Chrome and Opera while no
version was specified for Firefox so the latest version of geckodriver
was
implicitly downloaded.
This is released under an MIT license. See the LICENSE
file in this
repository for more information.
Important: Consult the license terms of the providers of the WebDriver downloads prior to downloading / using the WebDrivers.
FAQs
Python module and CLI tool for facilitating download and deploy of WebDriver binaries.
We found that webdriverdownloader demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Research
/Security News
Undocumented protestware found in 28 npm packages disrupts UI for Russian-language users visiting Russian and Belarusian domains.
Research
/Security News
North Korean threat actors deploy 67 malicious npm packages using the newly discovered XORIndex malware loader.