Skip to main content

Latest version Python 3.11 | 3.12 | 3.13 | 3.14+ Apache 2.0 license Codecov CodeQL Test Downloads

👩‍💻 Browserist – Python Extension for Selenium 👨‍💻

browserist

  1. The belief that web browsers account for differences in websites or web applications in all of their ability and that a particular web browser is superior to others.
  2. Discrimination or prejudice based on web browser.

Despite the urban definition, Browserist is a Python extension of the Selenium web driver that makes it even easier to use different browsers for testing and automation.

Key Features

With Browserist as an extension to Selenium, you get:

  • Improved stability and speed
  • Simple syntax and less code
  • Hassle-free setup across browsers: Chrome, Firefox, Edge, Safari, Internet Explorer
  • Extensive framework of functions that makes browser automation easy
  • Efficient development workflow with IntelliSense and type hints

How to Install

Ready to try? With PyPI:

pip install browserist

Or with Homebrew:

brew tap jakob-bagterp/browserist
brew install browserist

Do you need more information? Please refer to the installation details.

Getting Started

You're now ready to go:

from browserist import Browser

with Browser() as browser:
    browser.open.url("https://example.com")
    browser.wait.seconds(5)

Improved Stability and Less Code

Browserist improves stability with less code compared to standard use of Selenium. As browsers need time to render web pages, especially single-page applications, Selenium is often used with explicit timeouts:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()

driver.get("https://example.com")
driver.implicitly_wait(3)
search_box = driver.find_element(By.XPATH, "//xpath/to/input")
search_button = driver.find_element(By.XPATH, "//xpath/to/button")
search_box.send_keys("Lorem ipsum")
search_button.click()
driver.quit()

Browserist does the same with less and cleaner code, yet also with increased stability and without explicit/implicit waits:

from browserist import Browser

with Browser() as browser:
    browser.open.url("https://example.com")
    browser.input.value("//xpath/to/input", "Lorem ipsum")
    browser.click.button("//xpath/to/button")

Documentation

For in-depth documentation, visit the website with tutorials, code examples, a list of all methods, and much more.

Become a Sponsor 🏅

If you find this project helpful, please consider supporting its development. Your donations will help keep it alive and growing. Every contribution makes a difference, whether you buy a coffee or support with a monthly donation. Find your tier here:

Donate on GitHub Sponsors

Thank you for your support! 🙌

Contribute

If you have suggestions or changes to the module, feel free to add to the code and create a pull request.

Report Bugs

If you encounter any issues, you can report them as bugs or raise issues.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

browserist-1.7.21.tar.gz (68.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

browserist-1.7.21-py3-none-any.whl (168.4 kB view details)

Uploaded Python 3

File details

Details for the file browserist-1.7.21.tar.gz.

File metadata

  • Download URL: browserist-1.7.21.tar.gz
  • Upload date:
  • Size: 68.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for browserist-1.7.21.tar.gz
Algorithm Hash digest
SHA256 54a9d53aeece79c67aecaba3700e6ac509bbb8ce75600df5ee859bea245c7073
MD5 7c394be0fc8a0113cd62d5c23e3e3336
BLAKE2b-256 70841dc73358c7dc42e2aff5882ebc7a87954e8d1b9786c516668a4a458eb7fc

See more details on using hashes here.

Provenance

The following attestation bundles were made for browserist-1.7.21.tar.gz:

Publisher: release.yml on jakob-bagterp/browserist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file browserist-1.7.21-py3-none-any.whl.

File metadata

  • Download URL: browserist-1.7.21-py3-none-any.whl
  • Upload date:
  • Size: 168.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for browserist-1.7.21-py3-none-any.whl
Algorithm Hash digest
SHA256 479cae33cde4b3683d9d9e62d3399a47d1eb6822e303a602519208379e9448ee
MD5 193232eb7b175303530abcc7c69804e2
BLAKE2b-256 b26eec229acf066100296a5e4d78343f28a27a3d1bff2554f1acb7757cf75c41

See more details on using hashes here.

Provenance

The following attestation bundles were made for browserist-1.7.21-py3-none-any.whl:

Publisher: release.yml on jakob-bagterp/browserist

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page