Easiestm zero-config selenium webdriver for Python
Project description
open-webdriver
The simplest and easiest way to get a selenium webdriver
Platform Unit Tests
Platform binary nuitka build
About
Yet another selenium webdriver wrapper API in python.
This api is tested with github actions and the pain points have been found and smoothed out. For example the webdriver is downloaded and installed on first use. Addiotionally this library has been built to support the nuitka binary compilation of python. This allows you to make a bot and then distribute just a binary version to a client.
Benefits:
- Production ready. Cross platform tests.
- ssl certs are turned off to reduce errors for many websites.
- Downloading the proper binary for your platform and stashing it next to the app.
- Headless by default.
- Intelligently forces headless in a linux environment without a display card (prevents crash).
- Platform tests to ensure a stable cross platform experience.
- Pins to a specific version of selenium driver stack to ensure reproducable behavior.
- Nuitka Binary Builds for all platforms are tested.
Install
python -m pip install open-webdriver
Api
from open_webdriver import open_webdriver
with open_webdriver() as driver:
driver.get("https://www.google.com")
assert driver.title == "Google"
Tests
Just simply run tox
at the command line and everything should be tested. You may need to install tox
with python -m pip tox
.
Nuitka
This package supports the Nuitka cross compiler to binary app. However to make this work YOU MUST include the package data for selenium or you will get errors about missing javascript files when the program loads. To get around this you'll need to add package data:
python -m nuitka --include-package-data=selenium ...
For example see the example build file: https://github.com/zackees/open-webdriver/blob/main/tests/nuitka/test_binary_build.py
Changes
- 1.1.6: Fixes failing win-tox tests due to missing "PROGRAMW6432" value in os.environ (?!). Brave browser removed as it actually didn't work.
- 1.1.5: Cert warnings now suppressable with non headless sessions.
- 1.1.3: Suppress more cert warnings.
- 1.1.2: Suppress certificate warnings.
- 1.1.1: Update readme.
- 1.1.0: Platform binary builds using nuitka are now tested.
- 1.0.4: Now pins dependencies.
- 1.0.0: Initial code submit.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file open_webdriver-1.1.6.tar.gz
.
File metadata
- Download URL: open_webdriver-1.1.6.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.9.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45bbab1b893ba55bd87f2a2a394b1c045441400e99d6d4085e511b83d3bc0760 |
|
MD5 | 3b12604170e1c6c5d47ed84bc0fdf1d1 |
|
BLAKE2b-256 | 0a8754b9dc5cb3eb59865d80f050343ab3517e08e1718010b9edc2a2d30aae72 |
File details
Details for the file open_webdriver-1.1.6-py2.py3-none-any.whl
.
File metadata
- Download URL: open_webdriver-1.1.6-py2.py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.9.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c260b787cf5c2e7d0eb2845c22a523493d3edcc931fe570fa83f114cf0b7183 |
|
MD5 | a87fc8e6f45d84453f698f72320126be |
|
BLAKE2b-256 | 66f66916d81a1e87d4afdb10728aefe6a1b743d65f5665f657095bfe5a4dfdac |