awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
php-webdriver avatar

php-webdriver/php-webdriver

0
View on GitHub↗
5,203 stars·845 forks·PHP·MIT·17 vues

Php Webdriver

php-webdriver est un client WebDriver PHP et un framework d'automatisation de navigateur qui implémente la norme W3C WebDriver. Il sert d'interface programmatique pour contrôler les navigateurs web, exécuter JavaScript et gérer les sessions de navigateur dans des environnements avec et sans interface graphique (headless).

La bibliothèque fonctionne comme une implémentation du protocole Selenium, permettant aux applications PHP de communiquer avec des pilotes de navigateur tels que ChromeDriver ou GeckoDriver. Elle fournit la capacité d'automatiser les actions utilisateur, de naviguer sur les pages et de valider les éléments DOM pour les tests d'interface utilisateur web.

Ses capacités couvrent de larges domaines d'interaction avec le navigateur, y compris la localisation d'éléments de page, la gestion de formulaires et le contrôle de fenêtre. L'outil prend également en charge des configurations de navigateur avancées, telles que la gestion des cookies, le routage du trafic via des proxys, l'accès au shadow DOM et l'exécution de commandes DevTools de bas niveau.

Le framework inclut des utilitaires pour la synchronisation avec les états de page et la capture d'écran à la fois des pages complètes et des éléments individuels.

Features

  • WebDriver Implementations - Provides a full implementation of the W3C WebDriver protocol for controlling browsers via PHP.
  • Browser Automation Frameworks - Provides a programmatic framework for controlling web browsers to automate user interactions and verify UI states.
  • Browser Instance Management - Programmatically starts, configures, and terminates web browser sessions locally or remotely.
  • JSON-RPC Implementations - Implements the JSON-RPC protocol over HTTP to communicate with the WebDriver wire protocol server.
  • Session State Management - Maintains unique session identifiers to track and control specific browser instances across requests.
  • Browser Automation - Simulates user interactions such as clicking and typing to verify frontend behavior.
  • Element Interaction - Simulates user inputs on web elements, including clicking, typing, and triggering mouse events.
  • WebDriver Protocol Implementations - Implements the W3C WebDriver standard to enable communication between PHP applications and browser drivers like ChromeDriver.
  • WebDriver Client Libraries - Provides a PHP client library for automating web browser interactions via the WebDriver protocol.
  • Element State Verifications - Verifies if elements are displayed or if selectable options like checkboxes are currently selected.
  • Page Condition Synchronization - Pauses script execution until specific DOM conditions are met, ensuring automation stability.
  • Headless Browser Controllers - Acts as a controller for managing the lifecycle and execution of browser sessions in both headless and headed modes.
  • UI Element Interactions - Performs direct actions on interface objects such as checking boxes and selecting radio buttons.
  • Element Locators - Identifies and selects specific page elements using various selectors such as CSS and ID.
  • Browser Automation - Provides programmatic control of web browsers for tasks like end-to-end testing and data extraction.
  • JavaScript Execution Bridges - Enables the execution of arbitrary JavaScript snippets within the browser context and retrieves the results.
  • Browser Navigations - Directs the browser to open specific webpages via the provided URL address.
  • Data Extractions - Retrieves text content, HTML attributes, and DOM properties from specific elements using selectors.
  • Browser Navigation - Controls browser navigation to specific URLs and manages page load events.
  • Browser Session Managers - Starts and manages remote browser sessions by connecting to a WebDriver server with specific capabilities.
  • Automation Wait Conditions - Provides mechanisms to block execution until specific DOM elements, text, or JavaScript conditions are met during browser automation.
  • Browser Capability Configuration - Configures browser behavior, preferences, and custom profiles for automated sessions.
  • Browser Driver Management - Manages the startup and shutdown of local browser driver executables automatically.
  • Process Lifecycle Management - Automatically manages the lifecycle of local browser driver binaries as child processes.
  • Driver Integration - Provides specific support for launching and managing Firefox browser instances.
  • Window Management - Adjusts window size, toggles fullscreen mode, and switches between different browser window handles.
  • Capability Negotiation Protocols - Handles the negotiation of browser capabilities and versions during the session handshake.
  • Browser Screenshot Capture - Captures screenshots of the current browser view or specific page elements.
  • Client-Server Architectures - Uses a client-server architecture to translate high-level PHP commands into driver-level API calls.
  • Command Patterns - Encapsulates browser actions as command objects for serialization and transmission to remote drivers.
  • DOM Presence Polling - Implements polling loops to verify the presence of DOM elements before continuing execution.
  • Alert Handling - Interacts with browser-native JavaScript alerts, confirmations, and prompts by accepting or dismissing them.
  • Automatic Frame Switching - Moves the driver focus between the main document and various iframes to interact with nested content.
  • Automated End-to-End Testing - Enables automated validation of complex user flows and interface interactions through programmatic browser control.
  • Browser Cookie Management - Creates, deletes, and retrieves browser cookies to manage session state and user preferences.
  • Form Management - Handles complex form interactions, including dropdown selections and radio button groups.
  • Form Submission Clients - Triggers form submissions by calling the submit method or clicking the submit button.
  • Shadow DOM Traversal - Allows navigation into and interaction with elements inside encapsulated shadow roots.
  • Chrome DevTools Protocols - Provides the ability to send low-level commands via the Chrome DevTools Protocol for advanced browser manipulation.
  • Browser Configuration Profiles - Defines and manages distinct browser environments and settings via configuration profiles before launching sessions.

Historique des stars

Graphique de l'historique des stars pour php-webdriver/php-webdriverGraphique de l'historique des stars pour php-webdriver/php-webdriver

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Php Webdriver

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Php Webdriver.
  • getgauge/taikoAvatar de getgauge

    getgauge/taiko

    3,663Voir sur GitHub↗

    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

    JavaScriptautomationheadlessheadless-browsers
    Voir sur GitHub↗3,663
  • seleniumhq/seleniumAvatar de SeleniumHQ

    SeleniumHQ/selenium

    34,203Voir sur GitHub↗

    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

    Javadotnetjavajavascript
    Voir sur GitHub↗34,203
  • mherrmann/heliumAvatar de mherrmann

    mherrmann/helium

    8,306Voir sur GitHub↗

    Helium is a Python library and high-level wrapper for Selenium designed for browser automation, functional UI testing, and web scraping. It provides a simplified interface for interacting with web applications across different browser engines. The library distinguishes itself by allowing users to identify and interact with web elements using visible text labels rather than relying exclusively on technical identifiers like XPaths or CSS selectors. This approach enables the creation of automation scripts based on human-readable labels. The toolkit covers a broad range of browser automation cap

    Python
    Voir sur GitHub↗8,306
  • microsoft/playwright-pythonAvatar de microsoft

    microsoft/playwright-python

    14,279Voir sur GitHub↗

    Playwright for Python is a browser automation framework designed for end-to-end testing, web scraping, and user interaction simulation. It functions as a headless browser controller that enables programmatic navigation, data extraction, and the execution of complex workflows across multiple rendering engines. The framework distinguishes itself through an actionability-aware interaction engine that automatically verifies element readiness before performing actions, significantly reducing test flakiness. It utilizes isolated browser contexts to maintain separate storage and cookies for parallel

    Pythonchromiumfirefoxplaywright
    Voir sur GitHub↗14,279
Voir les 30 alternatives à Php Webdriver→

Questions fréquentes

Que fait php-webdriver/php-webdriver ?

php-webdriver est un client WebDriver PHP et un framework d'automatisation de navigateur qui implémente la norme W3C WebDriver. Il sert d'interface programmatique pour contrôler les navigateurs web, exécuter JavaScript et gérer les sessions de navigateur dans des environnements avec et sans interface graphique (headless).

Quelles sont les fonctionnalités principales de php-webdriver/php-webdriver ?

Les fonctionnalités principales de php-webdriver/php-webdriver sont : WebDriver Implementations, Browser Automation Frameworks, Browser Instance Management, JSON-RPC Implementations, Session State Management, Browser Automation, Element Interaction, WebDriver Protocol Implementations.

Quelles sont les alternatives open-source à php-webdriver/php-webdriver ?

Les alternatives open-source à php-webdriver/php-webdriver incluent : getgauge/taiko — Taiko is a browser automation framework and web end-to-end testing library used to perform programmatic user actions… seleniumhq/selenium — Selenium is a comprehensive browser automation framework that provides a standardized interface for controlling web… mherrmann/helium — Helium is a Python library and high-level wrapper for Selenium designed for browser automation, functional UI testing,… microsoft/playwright-python — Playwright for Python is a browser automation framework designed for end-to-end testing, web scraping, and user… chromedp/chromedp — chromedp is a browser automation framework and driver that controls web browsers via the Chrome DevTools Protocol. It… teamcapybara/capybara — Capybara is a browser automation library and web application acceptance test framework used to simulate user behavior…