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

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to jmcarp/robobrowser

Open-source alternatives to Robobrowser

30 open-source projects similar to jmcarp/robobrowser, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Robobrowser alternative.

  • hickford/mechanicalsouphickford avatar

    hickford/MechanicalSoup

    4,868View on GitHub↗

    MechanicalSoup is a Python web automation library designed to simulate browser behavior. It functions as a toolkit for web scraping and automation, providing an HTML parsing engine and an HTTP session manager to interact with websites programmatically. The library enables headless web interaction by mimicking a real user session. It manages persistent state through cookie handling and automatic redirect following, allowing for programmatic website navigation and the simulation of complex browser interactions. Its capabilities cover automated form population and submission using CSS selectors

    Python
    View on GitHub↗4,868
  • sunra/php-simple-html-dom-parsersunra avatar

    sunra/php-simple-html-dom-parser

    1,286View on GitHub↗

    php-simple-html-dom-parser is a PHP library for parsing HTML documents into a traversable in-memory tree that handles malformed markup gracefully. It constructs a complete object graph from raw HTML strings while retaining document structure and relational node hierarchies, and supports lazy child node iteration to load descendant nodes on demand for large documents. The library features a CSS selector query engine that translates selector expressions to locate and filter matching nodes within the parsed DOM tree. Programmatic accessors provide direct string-based attribute retrieval to extra

    HTML
    View on GitHub↗1,286
  • sparklemotion/mechanizesparklemotion avatar

    sparklemotion/mechanize

    4,443View on GitHub↗

    Mechanize is a Ruby library for web browser automation and headless browser emulation. It allows for programmatically navigating websites and simulating human behavior without a graphical user interface. The library provides an automated interface for populating and submitting web forms, including text fields, checkboxes, and file uploads. It manages stateful sessions by automatically storing and sending cookies across multiple requests to maintain user authentication and identity. Additional capabilities include web data scraping, the ability to download remote web content, and the maintena

    Ruby
    View on GitHub↗4,443

AI search

Explore more awesome repositories

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

Find more with AI search
  • mechanicalsoup/mechanicalsoupMechanicalSoup avatar

    MechanicalSoup/MechanicalSoup

    4,868View on GitHub↗

    MechanicalSoup is a Python web automation library and scraping framework designed to simulate browser sessions and navigate websites without requiring JavaScript execution. It functions as an HTML parsing tool and HTTP session manager, allowing for the programmatic retrieval of page content and the automation of web interactions. The library distinguishes itself by combining session persistence with automated form interaction. It maps user data to HTML input fields and selection boxes for programmatic submission and maintains authenticated states by managing cookies and user-agent headers acr

    Pythonbeautifulsoupmechanicalsouppypi
    View on GitHub↗4,868
  • remitchell/python-scrapingREMitchell avatar

    REMitchell/python-scraping

    4,714View on GitHub↗

    This project is a Python web scraping library and automated data collection suite. It provides tools for extracting structured data from websites, implementing web crawlers to navigate site links, and parsing HTML DOM structures to isolate specific elements and attributes. The toolkit includes a pipeline for processing unstructured text and cleaning raw web content to extract meaningful information. It also features capabilities for image data extraction and the integration of external APIs to retrieve structured data from remote endpoints. The system covers broad capability areas including

    Jupyter Notebook
    View on GitHub↗4,714
  • anglesharp/anglesharpAngleSharp avatar

    AngleSharp/AngleSharp

    5,499View on GitHub↗

    AngleSharp is an HTML5 DOM parser and web scraping framework designed to parse HTML5, SVG, and MathML documents into a W3C compliant document object model. It functions as a programmatic HTML generator and a CSS selector engine for querying and locating specific elements within a DOM. The project provides tools for simulating browser environments to automate web interactions, navigate URLs, and submit forms. It includes a dedicated HTML and CSS minifier to reduce the file size of web assets by removing unnecessary characters. The library supports HTML DOM manipulation and the extraction of s

    C#angle-bracketanglesharpc-sharp
    View on GitHub↗5,499
  • ionicabizau/scrape-itIonicaBizau avatar

    IonicaBizau/scrape-it

    4,074View on GitHub↗

    scrape-it is a Node.js web scraper and HTML parser designed to extract structured data from websites and HTML files. It functions as a web data extraction tool that retrieves specific information from DOM elements and converts web content into usable data fields. The tool uses CSS selectors to target specific data points and employs schema-driven data mapping to organize unstructured web text into a consistent format. It supports custom value transformation to convert raw extracted strings into specific data formats. The system provides capabilities for web data extraction and automated cont

    JavaScripthacktoberfestnode-scraperscraper
    View on GitHub↗4,074
  • inikulin/parse5inikulin avatar

    inikulin/parse5

    3,903View on GitHub↗

    parse5 is a WHATWG HTML parser and serializer for Node.js. It transforms HTML strings into a document object model and converts those trees back into valid HTML strings, following the logic defined by the HTML Living Standard. The project functions as a streaming HTML processor, using incremental parsing to handle large documents in chunks. It includes an HTML5 compliant tokenizer that uses a state-machine approach to break input into tokens according to official web specifications. The toolset covers HTML document parsing, serialization, and real-time rewriting via streams. These capabiliti

    TypeScript
    View on GitHub↗3,903
  • paquettg/php-html-parserpaquettg avatar

    paquettg/php-html-parser

    2,402View on GitHub↗

    PHP HTML Parser is a server-side programming library and DOM parser designed to ingest markup documents and structure them into a navigable parent-child object tree. The library provides a stream-based character lexer and a configurable rule engine that manages parser strictness, whitespace preservation, tag closing behavior, and character encoding detection during document ingestion. Content loading is handled through a pluggable retrieval layer that accepts local file paths, raw strings, and remote network URLs. Once loaded, documents can be queried using a chainable CSS selector engine th

    HTML
    View on GitHub↗2,402
  • scinfu/swiftsoupscinfu avatar

    scinfu/SwiftSoup

    5,087View on GitHub↗

    SwiftSoup is a cross-platform HTML processing library for Swift that converts raw HTML or XML strings and files into a structured document object model. It provides the core infrastructure to parse web content into a traversable tree, enabling programmatic access to page elements across iOS, macOS, and Linux. The library features a CSS selector engine for data extraction and a whitelist-based sanitization system to remove unsafe tags and attributes from user-submitted content. It optimizes repetitive document queries through memoized query caching. The project covers DOM manipulation for upd

    Swift
    View on GitHub↗5,087
  • tmpvar/jsdomtmpvar avatar

    tmpvar/jsdom

    21,591View on GitHub↗

    jsdom is a Node.js implementation of web standards that functions as a headless browser emulator. It provides a JavaScript execution environment and an HTML and XML parser to simulate a browser environment on the server side, implementing various web APIs and W3C standards. The project distinguishes itself by providing a sandboxed runtime for executing scripts embedded in HTML or external files. It includes specialized polyfills for the Canvas API and manages session state through HTTP cookie management. Its broader capabilities cover network interaction via request interception and resource

    JavaScript
    View on GitHub↗21,591
  • rchipka/node-osmosisR

    rchipka/node-osmosis

    4,110View on GitHub↗

    This project is a Node.js web scraping framework designed to automate data extraction through a programmatic workflow of requests, parsing, and document interaction. It functions as a headless web crawler, an HTTP request manager, and a DOM parser and extractor. The framework distinguishes itself by combining a JavaScript execution engine to interact with dynamic content and a hybrid selection system that utilizes both CSS and XPath selectors. It includes specialized middleware for proxy rotation and cookie-jar session management to maintain authenticated states and manage automated traffic.

    JavaScript
    View on GitHub↗4,110
  • asciimoo/collyasciimoo avatar

    asciimoo/colly

    25,348View on GitHub↗

    Colly is a web scraping framework and concurrent crawler written in Go. It provides a system for traversing web pages, following links, and extracting structured data from HTML and XML documents. The framework includes a distributed scraping engine designed to spread data collection tasks across multiple instances to increase throughput. It ensures compliance with website owner policies by automatically reading and respecting robots.txt files. The system manages request lifecycles through domain-based rate limiting, concurrency controls, and session management via a stateful cookie jar. It s

    Go
    View on GitHub↗25,348
  • ruipgil/scraperjsruipgil avatar

    ruipgil/scraperjs

    3,718View on GitHub↗

    Scraperjs is a JavaScript web scraping library and headless browser automation tool designed to extract structured data from both static HTML and JavaScript-rendered websites. It functions as an asynchronous scraping workflow orchestrator and a selector-based engine for transforming unstructured web content into usable data. The library distinguishes itself by managing a shared browser instance across multiple tasks to optimize resource usage and reduce startup latency. It supports custom script injection into sandboxed browser environments to manipulate the DOM or execute browser-side logic

    JavaScript
    View on GitHub↗3,718
  • microsoft/playwright-pythonmicrosoft avatar

    microsoft/playwright-python

    14,279View on 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
    View on GitHub↗14,279
  • binux/pyspiderbinux avatar

    binux/pyspider

    16,809View on GitHub↗

    PySpider is a Python web crawling framework designed for automated data extraction. It provides a pipeline for periodically fetching web content, processing HTML, and persisting scraped information into database backends. The system features a web-based management interface for editing scraping scripts, monitoring task progress, and reviewing collected data. It includes a headless browser JavaScript renderer to capture rendered HTML from dynamic web pages and a distributed architecture that uses message queues to scale crawling workloads across multiple nodes. The framework also covers task

    Python
    View on GitHub↗16,809
  • scrapy/scrapyscrapy avatar

    scrapy/scrapy

    62,274View on GitHub↗

    Scrapy is a comprehensive framework designed for automated web data extraction and large-scale crawling. It operates on an asynchronous, event-driven engine that manages non-blocking network requests and data processing tasks, allowing for the efficient retrieval of structured information from web documents using path-based selectors. The system distinguishes itself through a highly modular architecture that supports complex data collection workflows. Users can implement custom middleware and signal handlers to intercept and modify request flows, while a priority-based scheduler manages concu

    Pythoncrawlercrawlingframework
    View on GitHub↗62,274
  • soimort/you-getsoimort avatar

    soimort/you-get

    56,839View on GitHub↗

    This project is a command-line utility designed to fetch video, audio, and image content from a wide range of web platforms. It functions by parsing page metadata and utilizing modular, site-specific scripts to extract direct media stream URLs from complex web structures, enabling the local archiving of digital media for offline use. The tool distinguishes itself through its ability to handle authenticated content, allowing users to inject browser-stored session cookies to access restricted or private media. It also supports real-time media streaming by piping remote content directly into ext

    Python
    View on GitHub↗56,839
  • scrapinghub/portiascrapinghub avatar

    scrapinghub/portia

    9,509View on GitHub↗

    Portia is a containerized scraping platform and visual web scraper that enables no-code data extraction. It serves as a Scrapy visual scraping tool and spider generator, allowing users to design and deploy web scrapers through a graphical interface instead of writing manual selector code. The system distinguishes itself by converting visual web page annotations into executable Scrapy spider code and structured JSON specifications. This visual-to-code mapping allows users to define scraping logic and extraction rules through a point-and-click interface, which can then be exported for use in ex

    Python
    View on GitHub↗9,509
  • matiasb/demiurgematiasb avatar

    matiasb/demiurge

    118View on GitHub↗

    PyQuery-based scraping micro-framework.

    Python
    View on GitHub↗118
  • chineking/colachineking avatar

    chineking/cola

    1,501View on GitHub↗

    A high-level distributed crawling framework.

    Python
    View on GitHub↗1,501
  • jaypyles/scraperrjaypyles avatar

    jaypyles/Scraperr

    4,897View on GitHub↗

    Scraperr is a self-hosted web scraping and crawling platform designed for extracting structured data from websites using XPath selectors. It functions as a containerized system for managing scraping jobs through a queue and analyzing the resulting content using artificial intelligence. The project differentiates itself through its Kubernetes-native architecture, allowing for scalable deployment and management via package managers. It includes a crawling engine capable of domain-level spidering to discover linked pages and a data analyzer that uses artificial intelligence to query extracted we

    TypeScriptdockerhelmkubernetes
    View on GitHub↗4,897
  • puerkitobio/goqueryPuerkitoBio avatar

    PuerkitoBio/goquery

    14,958View on GitHub↗

    goquery is a Go HTML parsing library and CSS selector engine used to isolate and retrieve specific text or attributes from HTML documents. It functions as an HTML DOM manipulator that converts raw HTML strings into a structured tree for programmatic navigation and search. The library provides a fluent interface for chaining selection and filtering operations and utilizes a wrapper-based abstraction to simplify data extraction and manipulation of nodes. It employs an iterator-based processing mechanism to apply operations to every node within a matched selection. Its primary capabilities cove

    Gogoqueryhtml-parsingjquery
    View on GitHub↗14,958
  • arthurhub/html-rendererArthurHub avatar

    ArthurHub/HTML-Renderer

    1,379View on GitHub↗

    HTML-Renderer is a managed C# library that processes HTML and CSS content to render desktop user interfaces, generate image files, and export PDF documents. Built entirely in managed code without external native dependencies, the library parses markup into a structured document object model, applies cascading style rules, and computes virtual box layouts directly in memory. The rendering pipeline features a direct bitmap rasterisation engine that draws styled layouts straight onto graphics targets and document canvases, along with a dedicated pagination engine that splits continuous layouts a

    C#
    View on GitHub↗1,379
  • htmlhint/htmlhinthtmlhint avatar

    htmlhint/HTMLHint

    3,321View on GitHub↗

    HTMLHint is an HTML linter and static analysis tool designed to identify structural errors and syntax violations in source code. It functions as a configurable validator that scans local files and remote URLs to detect malformed tags, duplicate IDs, and document structure inconsistencies. The tool serves as an accessibility auditor, verifying that web elements include necessary labels and alternative text for images. It further distinguishes itself by enforcing web document compliance, checking for the presence of doctypes, language attributes, and head metadata. The project covers a broad r

    JavaScriptanalysiscode-analysiscode-quality
    View on GitHub↗3,321
  • gxcuizy/pythongxcuizy avatar

    gxcuizy/Python

    5,296View on GitHub↗

    This project is a collection of Python scripts and source code examples designed for learning programming fundamentals through practical application. It serves as a toolkit for web scraping and browser automation, alongside a library of utilities for data processing. The repository includes scripts for simulating human interactions to automate repetitive web tasks and online booking processes. It also provides a structured database of administrative divisions, including provinces, cities, and districts, for geographic data management and address validation. The collection covers capabilities

    Pythonpythonpython3
    View on GitHub↗5,296
  • grangier/python-goosegrangier avatar

    grangier/python-goose

    4,088View on GitHub↗

    python-goose is a Python library for web scraping and content extraction. It functions as an HTML boilerplate remover and article parser designed to isolate primary text and metadata from web pages by stripping away navigation, layout noise, and non-essential elements. The tool features multilingual processing capabilities, utilizing language-specific stop-word analyzers to identify and extract primary content across different languages. It also identifies and collects embedded media, including source URLs and embed codes for lead images and videos associated with an article. The library cov

    HTML
    View on GitHub↗4,088
  • holoviz/panelholoviz avatar

    holoviz/panel

    5,709View on GitHub↗

    Panel is a Python data application framework used to build interactive dashboards and reactive user interfaces by connecting data visualizations, widgets, and callbacks. It functions as a reactive UI library that synchronizes application state with interface updates based on user interactions. The project distinguishes itself by offering multiple execution models, including a FastAPI-based web application server for scalable session management and a WebAssembly compiler that enables Python applications to run directly in the browser without a backend server. It also includes a specialized too

    Python
    View on GitHub↗5,709
  • nanmicoder/crawlertutorialNanmiCoder avatar

    NanmiCoder/CrawlerTutorial

    4,262View on GitHub↗

    CrawlerTutorial is a comprehensive Python web scraping tutorial and framework designed for extracting data from static and dynamic websites. It functions as a web data extraction pipeline and an HTTP request orchestrator, covering the full lifecycle of scraping applications from initial fetching to final data storage. The project provides specialized guidance on anti-bot bypass techniques and web API reverse engineering. It includes methods for evading browser detection through identity masking and proxy rotation, as well as techniques for identifying hidden API endpoints by analyzing network

    Python
    View on GitHub↗4,262
  • 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