# selenium_driver_updater
[](https://badge.fury.io/py/selenium-driver-updater)
[](https://opensource.org/licenses/MIT)
[](https://pepy.tech/project/selenium-driver-updater)
[](https://pepy.tech/project/selenium-driver-updater)
[](https://pepy.tech/project/selenium-driver-updater)
[](https://github.com/stasvinokur/selenium_driver_updater/actions/workflows/build.yml)
It is a fast and convenience package that can automatically download or update Selenium webdriver binaries and their browsers for different OS.
## Installation
Use the package manager [pip](https://pip.pypa.io/en/stable/) to install selenium_driver_updater.
```
pip install selenium-driver-updater
```
## Usage in code
This example shows how you can use this library to download chromedriver binary and use it immediately. The chromedriver will be downloaded to base directory.
```python
from selenium_driver_updater import DriverUpdater
from selenium import webdriver
filename = DriverUpdater.install(DriverUpdater.chromedriver)
driver = webdriver.Chrome(filename)
driver.get('https://google.com')
```
Or you can specify a path where you want to download a chromedriver to
```python
from selenium_driver_updater import DriverUpdater
from selenium import webdriver
import os
base_dir = os.path.dirname(os.path.abspath(__file__))
filename = DriverUpdater.install(path=base_dir, driver_name=DriverUpdater.chromedriver)
driver = webdriver.Chrome(filename)
driver.get('https://google.com')
```
You can also specify the version type (beta, dev, canary) you want to download.
```python
from selenium_driver_updater import DriverUpdater
from selenium import webdriver
filename = DriverUpdater.install(driver_name=DriverUpdater.chromedriver, version=DriverUpdater.chromedriver_beta)
driver = webdriver.Chrome(filename)
driver.get('https://google.com')
```
You can also use library to download and update chromedriver and geckodriver binaries at the same time.
```python
from selenium_driver_updater import DriverUpdater
from selenium import webdriver
import os
base_dir = os.path.dirname(os.path.abspath(__file__))
list_drivers = [DriverUpdater.chromedriver, DriverUpdater.geckodriver]
filenames = DriverUpdater.install(path=base_dir, driver_name=list_drivers)
print(filenames)
driver_chrome = webdriver.Chrome(filename[0])
driver_chrome.get('https://google.com')
driver_firefox = webdriver.Firefox(filename[1])
driver_firefox.get('https://google.com')
```
## Usage with help of command line
Use
```bash
selenium-driver-updater --help
```
To see all available arguments and commands
Or you can use alias
```bash
selupd --help
```
for easier use
This example shows how you can use this console updater to download chromedriver to current dir
```bash
selenium-driver-updater -d chromedriver
```
Or you can use console updater to download chromedriver and geckodriver at the same time
```bash
selenium-driver-updater -d chromedriver,geckodriver
```
# Supported Selenium Binaries
### ``Chromedriver``
#### ``DriverUpdater.chromedriver``
For installing or updating [chromedriver binary](https://developer.chrome.com/docs/chromedriver/)
All supported OS for this driver are:
- Windows
- Linux
- MacOS
- MacOS on M-based processors
### ``Geckodriver``
#### ``DriverUpdater.geckodriver``
For installing or updating [geckodriver binary](https://github.com/mozilla/geckodriver/releases)
All supported OS's for this driver are:
- Windows
- Windows ARM
- Linux
- Linux ARM
- MacOS
- MacOS on M-based processors
### ``Operadriver``
#### ``DriverUpdater.operadriver``
For installing or updating [operadriver binary](https://github.com/operasoftware/operachromiumdriver)
All supported OS's for this driver are:
- Windows
- Linux
- MacOS
### ``Edgedriver``
#### ``DriverUpdater.edgedriver``
For installing or updating [edgedriver binary](https://developer.microsoft.com/ru-ru/microsoft-edge/tools/webdriver/)
All supported OS's for this driver are:
- Windows
- Windows ARM
- MacOS
- MacOS on M-based processors
- Linux
### ``SafariDriver``
#### ``DriverUpdater.safaridriver``
For installing or updating [safaridriver binary](https://developer.apple.com/documentation/webkit/testing_with_webdriver_in_safari)
All supported OS's for this driver are:
- MacOS
# Supported browsers for checking version
### ``Chrome Browser``
For checking version [chrome browser](https://www.google.com/chrome/)
### ``Firefox Browser``
For checking version [firefox browser](https://www.mozilla.org/en-US/firefox/)
### ``Opera Browser``
For checking version [opera browser](https://www.opera.com)
### ``Edge Browser``
For checking version [edge browser](https://www.microsoft.com/en-us/edge)
Raw data
{
"_id": null,
"home_page": "https://github.com/stasvinokur/selenium_driver_updater",
"name": "selenium-driver-updater",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "chromedriver, operadriver, edgedriver, safaridriver, selenium, seleniumdriver, chromedriver-binary, selenium-binary, selenium-python, selenium-driver, geckodriver, geckodriver-binary, operadriver-binary, edgedriver-binary, safaridriver-binary, chromebrowser, chrome-browser, firefox, firefox-browser, selenium-update, selenium-updater, updater",
"author": "Stanislav Vinokur",
"author_email": "stasvinokur@yahoo.com",
"download_url": "https://files.pythonhosted.org/packages/d8/c0/d521f47b60cb3a6ab7449902e3e86afbbc9728274476129e28a06854d784/selenium_driver_updater-7.0.1.tar.gz",
"platform": null,
"description": "# selenium_driver_updater\n\n[](https://badge.fury.io/py/selenium-driver-updater)\n[](https://opensource.org/licenses/MIT)\n[](https://pepy.tech/project/selenium-driver-updater)\n[](https://pepy.tech/project/selenium-driver-updater)\n[](https://pepy.tech/project/selenium-driver-updater)\n\n[](https://github.com/stasvinokur/selenium_driver_updater/actions/workflows/build.yml)\n\nIt is a fast and convenience package that can automatically download or update Selenium webdriver binaries and their browsers for different OS.\n\n## Installation\n\nUse the package manager [pip](https://pip.pypa.io/en/stable/) to install selenium_driver_updater.\n\n```\npip install selenium-driver-updater\n```\n\n## Usage in code\nThis example shows how you can use this library to download chromedriver binary and use it immediately. The chromedriver will be downloaded to base directory.\n```python\nfrom selenium_driver_updater import DriverUpdater\nfrom selenium import webdriver\n\nfilename = DriverUpdater.install(DriverUpdater.chromedriver)\n\ndriver = webdriver.Chrome(filename)\ndriver.get('https://google.com')\n\n```\n\nOr you can specify a path where you want to download a chromedriver to\n```python\nfrom selenium_driver_updater import DriverUpdater\nfrom selenium import webdriver\nimport os\n\nbase_dir = os.path.dirname(os.path.abspath(__file__))\n\nfilename = DriverUpdater.install(path=base_dir, driver_name=DriverUpdater.chromedriver)\n\ndriver = webdriver.Chrome(filename)\ndriver.get('https://google.com')\n\n```\n\nYou can also specify the version type (beta, dev, canary) you want to download.\n```python\nfrom selenium_driver_updater import DriverUpdater\nfrom selenium import webdriver\n\nfilename = DriverUpdater.install(driver_name=DriverUpdater.chromedriver, version=DriverUpdater.chromedriver_beta)\n\ndriver = webdriver.Chrome(filename)\ndriver.get('https://google.com')\n\n```\n\nYou can also use library to download and update chromedriver and geckodriver binaries at the same time.\n```python\nfrom selenium_driver_updater import DriverUpdater\nfrom selenium import webdriver\nimport os\n\nbase_dir = os.path.dirname(os.path.abspath(__file__))\nlist_drivers = [DriverUpdater.chromedriver, DriverUpdater.geckodriver]\n\nfilenames = DriverUpdater.install(path=base_dir, driver_name=list_drivers)\nprint(filenames)\n\ndriver_chrome = webdriver.Chrome(filename[0])\ndriver_chrome.get('https://google.com')\n\ndriver_firefox = webdriver.Firefox(filename[1])\ndriver_firefox.get('https://google.com')\n\n```\n\n## Usage with help of command line\nUse \n```bash\nselenium-driver-updater --help\n```\nTo see all available arguments and commands\n\nOr you can use alias\n```bash\nselupd --help\n```\nfor easier use\n\nThis example shows how you can use this console updater to download chromedriver to current dir \n```bash\nselenium-driver-updater -d chromedriver\n```\n\nOr you can use console updater to download chromedriver and geckodriver at the same time\n```bash\nselenium-driver-updater -d chromedriver,geckodriver\n```\n\n# Supported Selenium Binaries\n\n### ``Chromedriver`` \n#### ``DriverUpdater.chromedriver``\n\nFor installing or updating [chromedriver binary](https://developer.chrome.com/docs/chromedriver/)\n\nAll supported OS for this driver are:\n\n- Windows\n- Linux\n- MacOS\n- MacOS on M-based processors\n\n### ``Geckodriver`` \n#### ``DriverUpdater.geckodriver``\n\nFor installing or updating [geckodriver binary](https://github.com/mozilla/geckodriver/releases)\n\nAll supported OS's for this driver are:\n\n- Windows\n- Windows ARM\n- Linux\n- Linux ARM\n- MacOS\n- MacOS on M-based processors\n\n### ``Operadriver`` \n#### ``DriverUpdater.operadriver``\n\nFor installing or updating [operadriver binary](https://github.com/operasoftware/operachromiumdriver)\n\nAll supported OS's for this driver are:\n\n- Windows\n- Linux\n- MacOS\n\n### ``Edgedriver`` \n#### ``DriverUpdater.edgedriver``\n\nFor installing or updating [edgedriver binary](https://developer.microsoft.com/ru-ru/microsoft-edge/tools/webdriver/)\n\nAll supported OS's for this driver are:\n\n- Windows\n- Windows ARM\n- MacOS\n- MacOS on M-based processors\n- Linux\n\n### ``SafariDriver`` \n#### ``DriverUpdater.safaridriver``\n\nFor installing or updating [safaridriver binary](https://developer.apple.com/documentation/webkit/testing_with_webdriver_in_safari)\n\nAll supported OS's for this driver are:\n\n- MacOS\n\n# Supported browsers for checking version\n\n### ``Chrome Browser``\n\nFor checking version [chrome browser](https://www.google.com/chrome/)\n\n### ``Firefox Browser``\n\nFor checking version [firefox browser](https://www.mozilla.org/en-US/firefox/)\n\n### ``Opera Browser``\n\nFor checking version [opera browser](https://www.opera.com)\n\n### ``Edge Browser``\n\nFor checking version [edge browser](https://www.microsoft.com/en-us/edge)\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Download or update your Selenium driver binaries and their browsers automatically with this package",
"version": "7.0.1",
"project_urls": {
"Homepage": "https://github.com/stasvinokur/selenium_driver_updater"
},
"split_keywords": [
"chromedriver",
" operadriver",
" edgedriver",
" safaridriver",
" selenium",
" seleniumdriver",
" chromedriver-binary",
" selenium-binary",
" selenium-python",
" selenium-driver",
" geckodriver",
" geckodriver-binary",
" operadriver-binary",
" edgedriver-binary",
" safaridriver-binary",
" chromebrowser",
" chrome-browser",
" firefox",
" firefox-browser",
" selenium-update",
" selenium-updater",
" updater"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "bb761aae0644791851fa1fe97a632389e9d754783abd9a94585f9bb10efba9e6",
"md5": "3706b7c89789e19f97342eec23af54d9",
"sha256": "c052e2d21d5cdf1a46873cb6340da61655959570dcf4da1720c694426fa10a8a"
},
"downloads": -1,
"filename": "selenium_driver_updater-7.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3706b7c89789e19f97342eec23af54d9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 37306,
"upload_time": "2025-02-04T08:36:25",
"upload_time_iso_8601": "2025-02-04T08:36:25.418712Z",
"url": "https://files.pythonhosted.org/packages/bb/76/1aae0644791851fa1fe97a632389e9d754783abd9a94585f9bb10efba9e6/selenium_driver_updater-7.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d8c0d521f47b60cb3a6ab7449902e3e86afbbc9728274476129e28a06854d784",
"md5": "41279715c6d27fcf0e1e2c8beb8ea95d",
"sha256": "8e6ef5983c154b4e70363fdb0258206ea6c14e5ffc35706e8a22a7cd55737b25"
},
"downloads": -1,
"filename": "selenium_driver_updater-7.0.1.tar.gz",
"has_sig": false,
"md5_digest": "41279715c6d27fcf0e1e2c8beb8ea95d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24615,
"upload_time": "2025-02-04T08:36:27",
"upload_time_iso_8601": "2025-02-04T08:36:27.343221Z",
"url": "https://files.pythonhosted.org/packages/d8/c0/d521f47b60cb3a6ab7449902e3e86afbbc9728274476129e28a06854d784/selenium_driver_updater-7.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-04 08:36:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "stasvinokur",
"github_project": "selenium_driver_updater",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "selenium",
"specs": []
},
{
"name": "wget",
"specs": []
},
{
"name": "requests",
"specs": []
},
{
"name": "jsonschema",
"specs": []
},
{
"name": "beautifulsoup4",
"specs": []
}
],
"lcname": "selenium-driver-updater"
}