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

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
mherrmann avatar

mherrmann/helium

0
View on GitHub↗
8,306 stars·513 forks·Python·MIT·29 views

Helium

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 capabilities, including element interaction, synchronization via page condition waiting, and window and popup management. It supports complex UI actions such as file attachments and drag-and-drop operations, as well as bulk element extraction for data collection. Additional utilities include automated interaction with nested iFrames and page screenshot capture.

Features

  • Text-Based Element Discovery - Locates web elements by scanning for visible human-readable text labels instead of technical identifiers like XPaths.
  • Browser Automation Testing - Provides a high-level Python library for simulating real user interactions to test web application functionality.
  • Heuristic Element Matching - Uses heuristic matching against multiple HTML attributes to identify the most likely target web element.
  • Element Interaction - Provides high-level APIs to interact with web elements using human-readable labels for stable automation scripts.
  • UI Automation - Verifies user interface elements and workflows using a label-based interaction model.
  • Selenium WebDriver Automations - Provides a high-level Python wrapper around Selenium WebDriver to automate browser-native actions.
  • Browser Automation Interfaces - Offers a high-level interface for programmatically controlling browsers for automation and data extraction.
  • UI Element Interactions - Performs standard automated actions such as clicking, typing, and selecting values on page elements.
  • Web Task Automations - Automates routine browser chores such as form filling and navigation to reduce manual effort.
  • Spatial-Relative Element Mapping - Identifies target elements by calculating their visual coordinates relative to a known reference element.
  • Web Data Scraping - Extracts structured data from multiple web pages by automating browser navigation and content waiting.
  • Automation Wait Conditions - Pauses execution until defined page states or element visibility conditions are met using wait mechanisms.
  • Browser-Based Workflow Automations - Automates the movement of data and triggering of actions across multiple websites to connect web services.
  • Automatic Frame Switching - Provides automatic context switching to interact with elements inside nested iframes without manual driver shifts.
  • Bulk Element Operations - Retrieves all occurrences of specific element types or selectors to facilitate bulk data scraping.
  • Relative Element Location - Finds web elements based on their spatial relationship to other reference elements on the page.
  • Element Wait Conditions - Waits for specific elements to appear or conditions to be met to ensure automation stability.
  • IFrame Context Resolvers - Automatically manages execution contexts to interact with elements inside nested iframes.
  • Web Scraping Frameworks - Provides a toolkit for extracting data from websites by automating browser interactions and element retrieval.
  • Web Scraping - High-level Selenium wrapper for web automation.

Star history

Star history chart for mherrmann/heliumStar history chart for mherrmann/helium

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Helium

Similar open-source projects, ranked by how many features they share with Helium.
  • php-webdriver/php-webdriverphp-webdriver avatar

    php-webdriver/php-webdriver

    5,203View on GitHub↗

    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

    PHPphp-webdriverseleniumselenium-php
    View on GitHub↗5,203
  • mherrmann/selenium-python-heliummherrmann avatar

    mherrmann/selenium-python-helium

    8,306View on GitHub↗

    This project is a high-level Python library and wrapper for Selenium designed for web browser automation and functional testing. It provides a simplified interface for controlling browsers to execute automated workflows and end-to-end tests across Chrome and Firefox. The library distinguishes itself by replacing technical CSS selectors and identifiers with label-based element discovery, allowing elements to be located via visible text. It further simplifies browser control by automating window management through page titles and handling nested frame interactions without requiring manual conte

    Python
    View on GitHub↗8,306
  • lavague-ai/lavaguelavague-ai avatar

    lavague-ai/LaVague

    6,374View on GitHub↗

    LaVague is an LLM web agent framework and large action model designed to translate natural language instructions into executable browser automation scripts. It functions as a multi-modal orchestrator that reasons over web page states and HTML content to automate multi-step tasks via a Selenium-based automation engine. The framework features a modular model provider layer, allowing users to swap between different language and vision models from providers such as Anthropic, Gemini, and Azure OpenAI. It employs a multi-modal world model to process screenshots and HTML structures, utilizing retri

    Pythonaibrowserlarge-action-model
    View on GitHub↗6,374
  • openinterpreter/openinterpreteropeninterpreter avatar

    openinterpreter/openinterpreter

    64,134View on GitHub↗

    Open Interpreter is a local language model agent framework that enables the deployment of autonomous agents capable of controlling a local operating system and its applications. It provides an execution environment where language models can run code and scripts directly on a computer to automate system tasks. The framework includes a computer control interface that allows language models to interact with web browsers and native user interfaces through programmatic commands. To ensure system stability, it utilizes a secure sandbox environment for the execution of model-generated code. The sys

    Rust
    View on GitHub↗64,134
See all 30 alternatives to Helium→

Frequently asked questions

What does mherrmann/helium do?

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.

What are the main features of mherrmann/helium?

The main features of mherrmann/helium are: Text-Based Element Discovery, Browser Automation Testing, Heuristic Element Matching, Element Interaction, UI Automation, Selenium WebDriver Automations, Browser Automation Interfaces, UI Element Interactions.

What are some open-source alternatives to mherrmann/helium?

Open-source alternatives to mherrmann/helium include: php-webdriver/php-webdriver — php-webdriver is a WebDriver PHP client and browser automation framework that implements the W3C WebDriver standard.… mherrmann/selenium-python-helium — This project is a high-level Python library and wrapper for Selenium designed for web browser automation and… lavague-ai/lavague — LaVague is an LLM web agent framework and large action model designed to translate natural language instructions into… openinterpreter/openinterpreter — Open Interpreter is a local language model agent framework that enables the deployment of autonomous agents capable of… getgauge/taiko — Taiko is a browser automation framework and web end-to-end testing library used to perform programmatic user actions… autoscrape-labs/pydoll — pydoll is a Chrome DevTools Protocol automation library and headless browser controller used for web data extraction…