browserstack-local
Python bindings for Browserstack Local
What it is and what it does
browserstack-local is a Python wrapper around BrowserStack's Local binary, allowing you to test web applications running on your local machine or private network using BrowserStack's remote browser infrastructure. It handles the lifecycle of the Local tunnel—starting, stopping, and monitoring the connection—so that your Selenium tests or manual browser sessions can reach localhost or internal servers as if they were publicly accessible.
The package is straightforward: you instantiate a Local object, pass your BrowserStack access key and optional modifiers (proxy settings, folder paths, logging verbosity), and call start() to establish the tunnel. It depends only on psutil for process management and automatically downloads the BrowserStack binary on first use, storing it in a standard location. Configuration is done via a dictionary of arguments, with support for proxies, local identifiers for parallel testing, and verbose logging to help debug connection issues.
Use it for:
- Run Selenium tests against a local development server using BrowserStack's browser grid without exposing the server publicly.
- Test a local folder or staging environment across multiple browser versions and devices simultaneously.
- Enable CI/CD pipelines to perform cross-browser testing on private infrastructure without VPN or firewall reconfiguration.
- Debug browser compatibility issues by testing local code on real remote devices via BrowserStack.
- Support parallel local testing sessions with unique identifiers for load testing or multi-user scenarios.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings to manage BrowserStack Local, enabling remote browser testing against local development servers and folders.
Yes, if you use BrowserStack for remote browser testing and need to test local or private applications. The package is actively maintained with recent releases, has low install friction, and is in the top tier of PyPI packages. However, verify the license terms before adoption, and confirm that the BrowserStack binary download mechanism works in your deployment environment.
Install
browserstack-local on PyPI
pip
pip install browserstack-localuv
uv add browserstack-localpoetry
poetry add browserstack-localInstalling browserstack-local
Before you install
Low install friction with a single runtime dependency (psutil). Active maintenance with a release 7 days ago and recent commits; however, the repository has modest community engagement (10 stars).
License in practice
License status is unclear—no SPDX identifier or raw license text is available in the package metadata. Verify the actual license terms before using in commercial or restricted contexts.
Quickstart
pip install browserstack-local
from browserstack.local import Local
bs_local = Local()
bs_local.start(key="<browserstack-accesskey>")
print(bs_local.isRunning())
bs_local.stop()
Requires a valid BrowserStack account and access key; the package downloads and executes a BrowserStack binary at runtime.
Verify before relying
- Supported Python versions are not specified in the package metadata.
- Whether the BrowserStack binary download is automatic or requires manual setup in certain environments.
- Exact system requirements or OS compatibility constraints for the bundled binary.
- Current download volume and adoption metrics beyond the top-15000 tier classification.
Package facts
| License | not declared (unclear) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — psutil |
| Maintenance | actively maintained — 7 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 403,800/month — #6,914 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: browserstack_local-1.2.16-py3-none-any.whl
Keywords: BrowserStack, Local, selenium, testing
Tags
More Testing packages
Pluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
virtualenvvirtualenv creates isolated Python environments…
permissive · top 100 on PyPI
coverageCoverage.py measures which lines of Python code…
permissive · top 1,000 on PyPI
pytest-asynciopytest-asyncio is a pytest plugin that enables…
permissive · top 1,000 on PyPI
pytest-json-ctrfA pytest plugin that generates test reports in…
permissive · top 1,000 on PyPI
browserstack-sdkA Python SDK for running Selenium WebDriver…
unclear · top 15,000 on PyPI
pytest-seleniumpytest-selenium is a pytest plugin that…
copyleft · top 15,000 on PyPI
seleniumSelenium provides Python bindings to automate…
permissive · top 1,000 on PyPI
wptserveA Python web server built for testing web…
permissive · top 15,000 on PyPI
percy-seleniumIntegrates Percy visual testing into Python…
permissive · top 15,000 on PyPI
splinterSplinter provides a unified Python interface…
permissive · top 15,000 on PyPI
choreographerChoreographer provides remote control of…
unclear · top 5,000 on PyPI
lambdatest-selenium-driverCaptures visual snapshots during Selenium tests…
permissive · top 15,000 on PyPI
sshtunnelEstablishes SSH tunnels to forward local ports…
permissive · top 1,000 on PyPI
install-playwrightProvides a Python function to execute the…
permissive · top 15,000 on PyPI