30 open-source projects similar to microsoft/playwright-python, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Playwright Python alternative.
Playwright is a comprehensive browser automation framework designed for end-to-end testing and web workflow automation. It provides a unified API to drive web applications across multiple browser engines, enabling developers to simulate complex user interactions, perform web scraping, and validate application behavior in consistent, isolated environments. The framework distinguishes itself through a web-first testing paradigm that prioritizes stability and resilience. By utilizing an auto-waiting actionability engine and accessibility-tree-based locators, it eliminates common sources of test
This project is an agentic framework designed to enable autonomous web navigation and browser automation. It functions as a controller that translates natural language instructions into deterministic browser actions, allowing agents to interact with websites, perform data extraction, and manage complex authentication flows. By leveraging accessibility trees and semantic element resolution, the framework mimics human-like navigation, moving beyond brittle DOM selectors to interact reliably with modern web interfaces. The framework distinguishes itself through its focus on secure, scalable exec
Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by querying the native accessibility tree of an application, allowing for black-box testing without requiring source code instrumentation or platform-specific dependencies. The framework distinguishes itself through a unified command syntax that abstracts interactions across Android, iOS, and web environments. It features a dynamic synchronization engine that automatically pauses test execution to account for non-deterministic animations and network-dependent content loading, ensuring
php-webdriver is a WebDriver PHP client and browser automation framework that implements the W3C WebDriver standard. It serves as a programmatic interface for controlling web browsers, executing JavaScript, and managing browser sessions in both headed and headless environments. The library functions as a Selenium protocol implementation, allowing PHP applications to communicate with browser drivers such as ChromeDriver or GeckoDriver. It provides the ability to automate user actions, navigate pages, and validate DOM elements for web UI testing. Its capabilities cover broad areas of browser i
Taiko is a browser automation framework and web end-to-end testing library used to perform programmatic user actions and verify application behavior. It functions as a headless browser testing tool capable of simulating real interactions and asserting page states in Chromium and Firefox. The project includes a browser interaction recorder that captures live actions and exports them as executable JavaScript automation scripts. It also serves as a web accessibility auditor, analyzing pages to detect accessibility violations and ensure compliance with inclusive design standards. The framework c
WebDriverIO is a Node.js test automation framework used for automating functional tests across web browsers and mobile applications. It acts as a WebDriver protocol client that manages remote browser sessions and executes commands against WebDriver and Appium servers to perform end-to-end testing. The framework is distinguished by its ability to control both native and hybrid mobile applications and its support for running automated suites across local machines, remote grids, and cloud device providers. It includes specialized capabilities for coordinating multi-browser interactions and estab
This project is a Model Context Protocol server that enables Large Language Models to control Playwright browsers for web automation, scraping, and end-to-end testing. It functions as a programmable interface for executing JavaScript, capturing screenshots, and interacting with web elements across multiple browser engines. The server exposes browser automation capabilities as a set of standardized tools that models can discover and invoke. It supports session-based browser isolation to ensure unique contexts for each client connection and provides a transport layer using either standard input
SeleniumBase is a Python-based framework designed for end-to-end web application testing and automated web scraping. It provides a unified interface for browser orchestration, managing browser lifecycles, and executing complex interaction sequences across multiple browser vendors and operating systems. The framework simplifies the development of automation workflows by handling driver provisioning, element synchronization, and project scaffolding. The project distinguishes itself through specialized stealth configurations that modify browser fingerprints to bypass anti-bot detection mechanism
Capybara is a browser automation testing library and framework for web application acceptance testing. It provides a high-level API for automating browser navigation and element interaction to validate user-facing features. The project features a cross-browser driver interface that allows switching between headless and full browser environments without modifying the underlying test code. This abstraction enables the simulation of complex web workflows across different browser drivers and environments. The suite covers user interaction simulation, including form filling, click events, and bro
CodeceptJS is a NodeJS end-to-end testing framework designed for automating acceptance tests across web, mobile, and desktop applications. It serves as a cross-platform test automator and a behavior-driven development tool that maps feature files to step definitions to align technical tests with business requirements. The project distinguishes itself with AI-powered test maintenance capabilities, using machine learning to automatically identify and repair broken element selectors when user interfaces change. It also features a driver-agnostic abstraction layer that enables the same test suite
pydoll is a Chrome DevTools Protocol automation library and headless browser controller used for web data extraction and parallel browser automation. It controls Chromium-based browsers via direct WebSocket connections, allowing it to manage isolated browser contexts and tabs while bypassing the overhead and detection associated with WebDriver. The project features an anti-bot evasion framework that mimics natural human behavior, including mouse movements generated via Bezier curves and variable typing patterns. It provides specialized stealth capabilities to bypass behavioral analysis and au
CodeceptJS is a Node.js end-to-end testing framework used for writing acceptance and functional tests for web and mobile applications. It functions as an automated browser testing suite and cross-browser automation engine that allows users to simulate end-user interactions and verify page content using a JavaScript-based domain-specific language. The framework implements a behavior-driven development approach, enabling the creation of scenario-driven tests that describe application behavior in a human-readable format. It utilizes the page object model to encapsulate UI elements and logic into
chromedp is a browser automation framework and driver that controls web browsers via the Chrome DevTools Protocol. It functions as a headless browser automation tool and web browser controller, enabling the programmatic management of browser sessions, targets, and network responses through a remote debugging interface. The project provides specialized capabilities for Chrome DevTools Protocol automation, including headless browser testing, web scraping and data extraction, and mobile device emulation. It also supports browser-based visual regression by capturing precise screenshots of web pag
Capybara is a browser automation library and web application acceptance test framework used to simulate user behavior and verify functional requirements. It serves as a cross-browser testing tool and headless browser orchestrator, allowing for the execution of test suites across multiple browser engines. The project provides a driver-agnostic interaction layer that abstracts different browser engines, enabling users to switch between headless and full browser drivers. It supports multi-user session simulation by maintaining independent browser states and cookies to test interactions between i
Pyppeteer is a Python library for controlling Chromium-based browsers using the Chrome DevTools Protocol. It functions as a headless browser automation tool, allowing for the programmatic navigation of web pages and the extraction of data from dynamic websites. The project provides low-level browser control through direct communication with the Chrome DevTools Protocol, enabling the interception and modification of network traffic. It differentiates itself by offering specialized performance profiling capabilities, including the measurement of JavaScript and CSS code coverage and the capture
BrowserOS is an AI agent browser orchestrator and automation framework designed to manage browser state and execute complex web workflows. It functions as a local AI browser assistant and a Model Context Protocol controller, enabling the control of browser tabs, windows, and navigation through programmable AI agents and standardized context protocols. The system distinguishes itself through a graph-based visual workflow builder for creating repeatable automation sequences and the use of markdown-based files to define agent personalities and task recipes. It supports multi-provider orchestrati
TestCafe is a Node.js end-to-end web testing framework used to automate browser tests with JavaScript or TypeScript. It serves as a cross-browser testing tool and a command-line execution engine designed for integration into continuous integration pipelines. The framework supports behavior-driven development by mapping human-readable Gherkin syntax to automation logic. It also includes an integrated web accessibility auditor to identify violations within web applications. The toolset covers a broad range of automation capabilities, including parallel test execution across multiple browser in
Codeception is a full-stack testing framework for PHP applications that provides a unified interface for unit, functional, and acceptance testing. It serves as a tool for automating real desktop and mobile browsers via the WebDriver protocol and acts as a client for testing REST and SOAP APIs. The framework is distinguished by its support for Behavior-Driven Development, allowing users to write human-readable test specifications in Gherkin language to align technical tests with business requirements. It implements actor-based action mapping to connect these natural language steps to executabl
Selenium is a comprehensive browser automation framework that provides a standardized interface for controlling web browsers to perform automated tasks, user interactions, and data extraction. It functions as a cross-browser testing tool, enabling developers to execute identical automation scripts across various browser engines and operating systems to ensure consistent application behavior. By implementing the WebDriver protocol, it maps high-level automation commands to browser-specific drivers using a standardized HTTP-based wire protocol. The project distinguishes itself through its distr
BrowserMCP is a browser automation bridge that connects AI tools to a live browser session through a local proxy server. It implements a standardized protocol for sending commands like click, type, and navigate to a real browser instance running on the user's machine, while keeping all browsing data on the device. The project distinguishes itself by preserving user sessions and fingerprints across automation tasks. It attaches to the user's existing browser profile to maintain cookies, logins, and authentication state, and uses the real browser's user agent, viewport, and extension context to
Automa is a browser-based automation platform that enables users to build, schedule, and execute repetitive web tasks through a visual, no-code interface. By operating as a browser extension, it provides a canvas-based environment where users construct workflows by connecting functional blocks to interact with web elements, manage browser state, and process data. The platform distinguishes itself through its deep integration with the browser environment, allowing for complex orchestration such as event-driven triggers, cross-origin request handling, and the ability to package workflows as sta
Vitest is a high-performance testing framework designed for JavaScript and TypeScript applications. It provides an integrated environment that supports unit, integration, and browser-based testing, allowing developers to execute test suites natively without requiring separate build steps or complex configuration. The project distinguishes itself through a highly optimized execution model that leverages worker-thread isolation and on-demand module transformation to provide rapid feedback. It includes a comprehensive suite of mocking and spying utilities that allow for the interception of depen
Nightwatch is a Node.js test automation tool and W3C WebDriver test framework designed for executing functional test suites and verifying system behavior. It provides a suite of utilities for web browser automation, native mobile application testing, and REST API validation. The project includes specialized tools for visual regression testing, which compares current screenshots against baseline images to detect unexpected changes. It also features an accessibility auditing tool to check user interface elements against established standards for compliance. The framework covers a broad range o
Intern is a JavaScript test framework and runner designed for executing unit and functional tests across different environments. It serves as an end-to-end testing tool and cross-browser testing suite to verify that application behavior remains consistent across multiple desktop and mobile web browsers. The project enables automated browser testing by controlling web drivers and utilizing cloud testing services to simulate user interactions. This allows for the automation of functional tests and cross-platform web testing to identify bugs in a web interface. The system provides capabilities
CasperJS is a scripting utility and testing framework for automating web scenarios via headless browsers. It enables the execution of navigation steps and form inputs to automate complex user scenarios, extract web data, and validate the state of remote pages. The project provides specific tooling for PhantomJS and SlimerJS, allowing users to write programmable sequences for web navigation and data extraction. It includes capabilities for capturing visual snapshots of full pages or specific elements to perform user interface regression testing. The framework covers broad automation areas inc
Pest is a testing framework for PHP that provides a comprehensive suite for executing unit, integration, and end-to-end tests. It functions as an automated testing tool that prioritizes developer experience and readability through a concise, expressive syntax for defining test suites. By wrapping an established testing foundation, it maintains compatibility with existing ecosystem tools while offering a specialized interface for writing and organizing automated tests. The framework distinguishes itself through integrated support for parallel test execution, which distributes suites across mul
gstack is an AI agent framework and development workflow system designed to automate the software development lifecycle. It coordinates specialized AI personas to manage tasks across product design, engineering management, and quality assurance, transforming product intent into technical specifications and final releases. The project is distinguished by its deep integration of headless browser automation and semantic code memory. It utilizes a persistent Chromium daemon for web scraping and visual auditing, and implements a searchable knowledge base that logs architectural decisions and repos
CefSharp is a .NET binding for the Chromium Embedded Framework that allows developers to embed a full web browser into desktop applications. It provides an embedded browser control for rendering HTML, CSS, and JavaScript content within a native host window. The project features a bidirectional JavaScript bridge interface that enables the execution of scripts and the exposure of native host classes and methods to the browser environment. It also includes a headless browser automation tool for executing web tasks and capturing page screenshots without a graphical user interface. The library co
nodriver is an asynchronous Chromium browser automation framework that provides headless control and web scraping capabilities. It functions as a Chrome DevTools Protocol client, allowing for granular engine control by attaching directly to the browser's debug port without the need for external driver binaries. The framework is specifically designed as an anti-bot detection bypass tool. It modifies browser fingerprints and protocol headers to evade automated security systems, handle security warnings, and bypass common obstacles like insecure connection alerts. The system covers a broad rang
This project is a Model Context Protocol tool that connects local browser instances to AI agents, enabling programmatic control over web sessions. It functions as a browser automation framework, allowing for the navigation of pages, interaction with form elements, and the management of user data while maintaining existing authentication states and profiles. The utility distinguishes itself by enabling local analysis of browser content, including the extraction of text and the performance of semantic searches across open tabs without transmitting private data to external servers. It also provi