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
Back to symfony/css-selector

Open-source alternatives to Css Selector

30 open-source projects similar to symfony/css-selector, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Css Selector alternative.

  • zeux/pugixmlzeux avatar

    zeux/pugixml

    4,590View on GitHub↗

    pugixml is a lightweight C++ XML parser and DOM-based library used for parsing, manipulating, and saving XML documents. It provides a portable toolset for reading XML data from files, strings, or memory buffers and converting them into an in-memory document object model. The library includes a dedicated XPath 1.0 engine for extracting specific nodes and data through path expressions. It distinguishes itself through customizable memory management, allowing heap operations to be redirected to user-defined allocation functions, and the ability to perform in-place buffer parsing to reduce memory

    C++
    View on GitHub↗4,590
  • sparklemotion/nokogirisparklemotion avatar

    sparklemotion/nokogiri

    6,236View on GitHub↗

    Nokogiri is an XML and HTML parsing library that builds navigable document trees from strings, files, or URLs using native C parsers for speed and standards compliance. It provides a CSS selector engine that translates CSS3 selectors into XPath expressions for querying nodes, an XPath query interface with namespace support, a document manipulation toolkit for modifying parsed documents, XSD schema validation, and XSLT transformation capabilities. The library wraps libxml2 and libxslt C libraries with Ruby bindings for high-performance parsing, and integrates Google's Gumbo parser for standard

    Clibxml2libxsltnokogiri
    View on GitHub↗6,236
  • psf/requests-htmlpsf avatar

    psf/requests-html

    13,826View on GitHub↗

    requests-html is a Python HTML parsing library and web scraping framework. It functions as an asynchronous HTTP client and a JavaScript rendering engine designed to fetch and parse web pages for structured data extraction. The project integrates a headless browser to execute JavaScript, allowing it to retrieve dynamically generated content that standard HTML parsers cannot see. It provides tools for automated data extraction using CSS selectors and XPath expressions to isolate specific text or attributes from HTML structures. The framework covers network operations including asynchronous pag

    Pythonbeautifulsoupcss-selectorshtml
    View on GitHub↗13,826

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
  • dtolnay/syndtolnay avatar

    dtolnay/syn

    3,292View on GitHub↗

    syn is a Rust syntax tree parser and token stream converter. It serves as a toolkit for procedural macro development, providing a framework to parse Rust source code into structured syntax trees for analysis and transformation. The project enables the manipulation of Rust abstract syntax trees through specialized visitor and folder patterns for traversing and mutating nodes. It provides a bidirectional mapping that allows developers to convert token streams into structured trees and print those trees back into tokens for code generation. The library covers a broad range of syntax analysis ca

    Rustproc-macro
    View on GitHub↗3,292
  • jshint/jshintjshint avatar

    jshint/jshint

    9,064View on GitHub↗

    JSHint is a JavaScript static analysis tool and linter designed to detect errors and enforce coding standards. It functions as a syntax validator that scans source code to identify potential logic problems and programming mistakes before the code is executed. The tool provides a command line interface for analyzing files and directories. It supports the export of analysis results into standardized formats such as Checkstyle for integration with external build tools. Analysis is managed through a system of linting rule management and environment global configuration. This includes the ability

    JavaScript
    View on GitHub↗9,064
  • emmetio/emmetemmetio avatar

    emmetio/emmet

    4,541View on GitHub↗

    Emmet is a markup code generator and web development productivity toolkit. It serves as an expansion engine that converts shorthand abbreviations and CSS-like selectors into full HTML, XML, and other markup structures. The project features a dedicated CSS shorthand expansion engine that transforms concise property codes into full style declarations, including the automatic generation of vendor prefixes and gradients. It distinguishes itself by offering a programmable expansion process through custom snippet definitions, abbreviation alias mapping, and script-based extensibility. The toolkit

    TypeScriptabbreviationcssemmet
    View on GitHub↗4,541
  • json5/json5J

    json5/json5

    7,132View on GitHub↗

    JSON5 is a parser and serializer for a human-readable configuration format that extends JSON. It serves as a JavaScript-based data parser that allows for a more flexible version of the JSON specification to simplify manual editing of data files. The project provides capabilities to support comments, trailing commas, and multi-line strings. It includes utilities to convert this extended syntax into standard JSON for compatibility with tools requiring strict specifications. The library covers data serialization, string parsing, and structural syntax validation. It also provides integration for

    JavaScript
    View on GitHub↗7,132
  • jquery/esprimajquery avatar

    jquery/esprima

    7,139View on GitHub↗

    Esprima is a JavaScript parser that converts source code into a structured abstract syntax tree. It implements a specification-driven grammar to ensure compliance with ECMAScript standards, enabling the programmatic analysis and transformation of JavaScript programs. The project provides capabilities for lexical tokenization to break source code into individual symbols and static syntax validation to verify that scripts are well-formed without executing the code. Its functional surface covers JavaScript static analysis, lexical analysis, and the generation of abstract syntax trees.

    TypeScript
    View on GitHub↗7,139
  • yuin/goldmarkyuin avatar

    yuin/goldmark

    4,860View on GitHub↗

    Goldmark is a Markdown parser and renderer written in Go that converts Markdown text into HTML or XHTML. It implements the CommonMark specification to ensure consistent parsing behavior. The project utilizes a modular extension registry, allowing for the addition of custom syntax such as tables, task lists, and footnotes. It also includes specialized support for CJK languages to handle specific line-breaking and emphasis rules for Chinese, Japanese, and Korean characters. The library parses text into an abstract syntax tree for programmatic document analysis and modification. Its capabilitie

    Gocommonmarkgogolang
    View on GitHub↗4,860
  • whatwg/htmlwhatwg avatar

    whatwg/html

    9,163View on GitHub↗

    This repository contains the HTML specification, which defines the core standards for web page structuring, content organization, and document rendering. It establishes the fundamental algorithms for state-machine-based tokenization, tree construction for the document object model, and origin-based security isolation. The specification provides a framework for defining custom elements with independent lifecycles and registries. It also details the requirements for cross-document communication, session history management, and the synchronization of interface properties with content attributes.

    HTMLcanvaseventsourcehtml
    View on GitHub↗9,163
  • evilstreak/markdown-jsevilstreak avatar

    evilstreak/markdown-js

    7,679View on GitHub↗

    markdown-js is a JavaScript markdown parser and converter that transforms markdown text into HTML output. It functions as both a library and a command line interface tool for converting documents. The project is centered on an abstract syntax tree representation, allowing markdown to be parsed into a structured tree for programmatic inspection and modification before the final rendering process. This intermediate representation enables custom markup processing and document transformations. The toolset covers programmatic document parsing, static site generation, and CLI-based file processing

    JavaScript
    View on GitHub↗7,679
  • boa-dev/boaboa-dev avatar

    boa-dev/boa

    6,884View on GitHub↗

    Boa is a high-performance JavaScript engine and parser designed to execute JavaScript code and analyze source code structure. It functions as a runtime environment for executing scripts to automate tasks or process data, providing both a command-line JavaScript interpreter and a tool for converting source code into abstract syntax trees. The engine is capable of compiling to WebAssembly, allowing the runtime to be deployed and executed within web browser environments. It includes an interactive read-eval-print loop for real-time logic testing and snippet execution via a terminal. The system

    Rustecmascripthacktoberfestinterpreter
    View on GitHub↗6,884
  • rust-bakery/nomrust-bakery avatar

    rust-bakery/nom

    10,426View on GitHub↗

    nom is a parser combinator framework for Rust used to build complex parsers by combining small, reusable parsing functions. It functions as a zero-copy parsing tool that minimizes memory overhead by returning slices of the original input instead of allocating new memory. The framework is designed for diverse data formats, serving as a binary data parser with configurable endianness and a bitstream processing library capable of extracting values of arbitrary bit length. It also functions as a streaming data parser that can process data arriving in chunks and signal when additional input is req

    Rustbyte-arraygrammarnom
    View on GitHub↗10,426
  • keats/teraKeats avatar

    Keats/tera

    4,235View on GitHub↗

    Tera is a server-side rendering engine and template engine for Rust. It is designed to generate dynamic text by injecting data into predefined template files, utilizing a syntax compatible with Jinja2 and Django. The engine supports a variety of text generation tasks, including the creation of web pages via HTML rendering, the automation of email templates, and the production of environment-specific configuration files.

    Rustdjangojinja2rust-library
    View on GitHub↗4,235
  • mherrmann/heliummherrmann avatar

    mherrmann/helium

    8,306View on 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
    View on GitHub↗8,306
  • json-path/jsonpathjson-path avatar

    json-path/JsonPath

    9,423View on GitHub↗

    JsonPath is a Java library designed for querying and manipulating JSON documents using the JsonPath expression language. It functions as a query engine for extracting and filtering specific data from JSON structures through path-based expressions. The library provides capabilities for transforming JSON documents by modifying values or mapping extracted data into Java objects. It also includes an aggregation library for calculating statistical metrics, such as sums and averages, on numeric arrays. The project handles data extraction through array filtering and numerical aggregation. Performan

    Java
    View on GitHub↗9,423
  • symfony/dom-crawlersymfony avatar

    symfony/dom-crawler

    4,043View on GitHub↗

    This project is an HTML and XML DOM parser designed for loading and navigating the structure of web documents to extract specific data points. It functions as a web scraping utility that provides a system for locating precise elements using a CSS and XPath selector engine. The library includes a URI resolver that converts relative links found in documents into absolute addresses using a base URI. It provides a set of tools for retrieving text, attributes, and media sources from parsed content. The toolset covers document hierarchy traversal, selector-based filtering, and text extraction with

    PHP
    View on GitHub↗4,043
  • kr1s77/python-crawler-tutorial-starts-from-zeroKr1s77 avatar

    Kr1s77/Python-crawler-tutorial-starts-from-zero

    4,599View on GitHub↗

    This project is a Python web scraping tutorial and framework designed for building automated data extraction tools and web crawlers. It provides a structured approach to navigating websites and persisting scraped data to databases. The project includes a toolset for web API analysis, focusing on reverse engineering obfuscated API requests and inspecting network traffic to extract structured data. It also covers optical character recognition workflows to convert visual text within images into machine-readable strings. The framework covers capabilities for headless browser automation to handle

    Python
    View on GitHub↗4,599
  • 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
  • jquery/sizzlejquery avatar

    jquery/sizzle

    6,306View on GitHub↗

    A sizzlin' hot selector engine.

    JavaScript
    View on GitHub↗6,306
  • generalnewsextractor/generalnewsextractorGeneralNewsExtractor avatar

    GeneralNewsExtractor/GeneralNewsExtractor

    3,779View on GitHub↗

    GeneralNewsExtractor is a specialized system for identifying and extracting structured news data through configurable HTML filtering and XPath-based parsing. It functions as an automated news scraper and web page content parser that isolates article bodies and metadata from news webpages. The system uses YAML or JSON configuration files to manage extraction rules and XPath definitions, decoupling the processing logic from site-specific selectors. This allows for targeted noise removal and the isolation of titles, authors, and publication dates through customizable filtering. The tool covers

    Pythonpython3webcrawlerwebspider
    View on GitHub↗3,779
  • 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
  • ericchiang/pupericchiang avatar

    ericchiang/pup

    8,427View on GitHub↗

    Pup is a command line tool for extracting and filtering data from HTML documents using CSS selectors. It functions as a parser and selector engine that isolates specific elements based on tags, IDs, classes, and attributes. The project provides utilities for converting selected HTML nodes into plain text, attribute values, or structured JSON objects. It includes a markup formatter that corrects missing tags and applies consistent indentation to improve the readability of HTML documents. The tool handles the retrieval of text content and attributes through a CSS selector engine, supporting co

    HTML
    View on GitHub↗8,427
  • 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
  • predidit/kazumiPredidit avatar

    Predidit/Kazumi

    26,597View on GitHub↗

    Kazumi is a cross-platform media player and streaming platform that centralizes video content from diverse third-party web sources. It functions as an automated scraping tool, utilizing configurable path patterns and selectors to extract and aggregate media streams into a unified interface. The platform distinguishes itself through its focus on synchronized group viewing and real-time state management. Users can participate in shared virtual rooms where playback progress and controls are aligned across multiple devices. Additionally, the application includes integrated image processing capabi

    Dartandroidcross-platformdanmaku
    View on GitHub↗26,597
  • mgdm/htmlqmgdm avatar

    mgdm/htmlq

    7,552View on GitHub↗

    htmlq is a suite of command-line utilities for querying and extracting data from HTML documents using CSS selectors. It functions as a query language tool for HTML structures and attributes, providing a way to retrieve specific information from documents via the terminal. The tool provides capabilities for extracting text content, specific HTML attributes, and document fragments. It includes an HTML document formatter for cleaning and reformatting output with consistent indentation, as well as utilities for stripping tags to isolate plain text. The software handles structural HTML processing

    Rust
    View on GitHub↗7,552
  • bjesus/pipetbjesus avatar

    bjesus/pipet

    4,662View on GitHub↗

    pipet is a command-line tool that turns web scraping into a piped data flow through Unix filters. It provides a set of specialized scrapers — for CSS selector extraction, headless browser JavaScript rendering, JSON API querying, and change monitoring — each outputting structured data that can be transformed by chaining additional commands. The tool uses declarative selectors (CSS and JSON path expressions) to define what to extract, automatically follows pagination links to collect data across multiple pages, and serializes results into JSON, custom-delimited text, or rendered templates. It c

    Gocsscurlgjson
    View on GitHub↗4,662
  • 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
  • oneuijs/you-dont-need-jqueryoneuijs avatar

    oneuijs/You-Dont-Need-jQuery

    20,161View on GitHub↗

    This project is a reference guide and collection of implementation patterns for replacing legacy libraries with native JavaScript. It provides a vanilla JavaScript reference guide, a modern web API cookbook, and a DOM manipulation cheat sheet to help migrate frontend dependencies to standard browser APIs. The project focuses on mapping library functions to native interfaces for DOM manipulation, network requests, and event handling. It includes a utility pattern library for common tasks such as string cleaning, type checking, and element styling. The covered capabilities include DOM element

    JavaScript
    View on GitHub↗20,161
  • leonidas-from-xiv/node-xml2jsLeonidas-from-XIV avatar

    Leonidas-from-XIV/node-xml2js

    4,966View on GitHub↗

    This project is a Node.js library for bidirectional conversion between XML strings and JavaScript objects. It functions as an XML parser that transforms XML content into structured data and an XML serializer that generates formatted strings from JavaScript data objects. The toolkit includes a data transformer that applies custom processing functions to tags and attributes during the conversion process. It manages XML namespaces and supports the definition of custom root elements to maintain document structure during generation. The system handles XML data parsing, string generation, and name

    CoffeeScript
    View on GitHub↗4,966