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
matthewmueller avatar

matthewmueller/x-ray

0
View on GitHub↗
5,904 stars·342 forks·JavaScript·MIT·15 views

X Ray

X-ray is a headless browser web scraper and HTML content crawler designed to extract structured data from websites. It functions as a stream-based data scraper and structured data extractor, using selectors to retrieve text and attributes from HTML as nested objects or arrays.

The project includes a request rate controller to manage network traffic through concurrency limits, throttles, and timeouts. It handles dynamic website scraping by rendering JavaScript via a headless browser and performs automated website crawling using breadth-first link following and pagination management.

The system provides a data pipeline that applies functional value transformations to raw strings and writes results to a readable stream to prevent memory overflow during large-scale web scraping jobs.

Features

  • Headless Browsers - Uses a headless browser to render JavaScript and extract content from dynamic web pages.
  • Dynamic - Employs techniques to retrieve data from websites that rely on JavaScript for content rendering.
  • HTML Selector Extractors - Provides a selector-based parser to retrieve text and attributes from HTML as structured nested objects or arrays.
  • Multi-Page Crawling - Implements systematic site discovery by navigating through sequential pages and link hierarchies.
  • Structured Data Extraction - Extracts specific data points from HTML into structured formats like objects and arrays.
  • Web Data Extraction - Programmatically scrapes and processes web content to create structured data objects.
  • Data Extractions - Retrieves specific text and attributes from HTML using CSS selectors and DOM traversal.
  • Recursive Crawlers - Discovers and indexes linked pages from seed URLs using recursive breadth-first traversal.
  • Extraction Streams - Streams extracted structured data incrementally to prevent data loss during long-running scraping jobs.
  • Data Transformation Functions - Applies transformation functions to scrape results for trimming, slicing, and data cleaning.
  • Text Transformation Functions - Provides custom filter functions to clean and modify raw scraped strings before final output.
  • Web Page Pagination Discovery - Automatically identifies and follows pagination links to traverse multi-page HTML result sets.
  • Scraping Result Streams - Writes extracted results to a readable stream or file immediately to prevent memory overflow.
  • Stream-Based Data Pipelines - Uses a processing architecture that pipes extracted data directly to storage to optimize memory usage.
  • Concurrent Request Limits - Controls the number of simultaneous outgoing requests to prevent overloading target servers.
  • Request Rate Limiting - Manages the frequency and concurrency of outgoing requests to avoid server detection or overload.
  • Large-Scale Domain Crawlers - Provides infrastructure for comprehensive discovery and indexing of entire websites at scale.
  • Parsing Utilities - Web scraping utility.

Star history

Star history chart for matthewmueller/x-rayStar history chart for matthewmueller/x-ray

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. 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

Projects sharing features with X Ray

These projects share indexed features with X Ray. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • 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
  • lapwinglabs/x-raylapwinglabs avatar

    lapwinglabs/x-ray

    5,904View on GitHub↗

    X-Ray is a web scraping framework and asynchronous web crawler designed to extract structured data from websites. It functions as an HTML data extractor that transforms raw page content into a defined schema using CSS-style selectors. The project implements a headless browser crawler capable of executing JavaScript to render dynamic content. It handles website content discovery through a breadth-first crawling strategy and automatic pagination discovery to traverse multi-page result sets. The framework manages web data pipelines using a concurrency-limited request queue and request rate cont

    JavaScript
    View on GitHub↗5,904
  • apify/crawleeapify avatar

    apify/crawlee

    24,002View on GitHub↗

    Crawlee is a web scraping framework designed for building scalable, reliable, and distributed data extraction pipelines. It provides a unified interface for managing headless browser automation and lightweight HTTP requests, allowing developers to handle complex web navigation, dynamic content rendering, and large-scale data collection within a single, modular architecture. The project distinguishes itself through its resource-aware concurrency controller, which dynamically scales task execution based on real-time CPU and memory usage to prevent host machine exhaustion. It also features a rob

    TypeScriptapifyautomationcrawler
    View on GitHub↗24,002
  • code4craft/webmagiccode4craft avatar

    code4craft/webmagic

    11,680View on GitHub↗

    Webmagic is a Java web crawling framework designed for building scalable automated crawlers to download and process large volumes of web pages. It functions as a distributed web crawler and dynamic content crawler, utilizing an XPath HTML parser to locate and extract specific data points from page structures. The framework distinguishes itself through its ability to handle dynamic content by rendering JavaScript and executing asynchronous requests to extract data from non-static pages. It also allows users to define and execute crawler logic via scripting languages, enabling the update of col

    Javacrawlerframeworkjava
    View on GitHub↗11,680
Compare all 30 related projects→

Frequently asked questions

What does matthewmueller/x-ray do?

X-ray is a headless browser web scraper and HTML content crawler designed to extract structured data from websites. It functions as a stream-based data scraper and structured data extractor, using selectors to retrieve text and attributes from HTML as nested objects or arrays.

What are the main features of matthewmueller/x-ray?

The main features of matthewmueller/x-ray are: Headless Browsers, Dynamic, HTML Selector Extractors, Multi-Page Crawling, Structured Data Extraction, Web Data Extraction, Data Extractions, Recursive Crawlers.

Which projects share features with matthewmueller/x-ray?

Projects with overlapping indexed features include: asciimoo/colly — Colly is a web scraping framework and concurrent crawler written in Go. It provides a system for traversing web pages,… lapwinglabs/x-ray — X-Ray is a web scraping framework and asynchronous web crawler designed to extract structured data from websites. It… apify/crawlee — Crawlee is a web scraping framework designed for building scalable, reliable, and distributed data extraction… code4craft/webmagic — Webmagic is a Java web crawling framework designed for building scalable automated crawlers to download and process… ionicabizau/scrape-it — scrape-it is a Node.js web scraper and HTML parser designed to extract structured data from websites and HTML files.… lightpanda-io/browser — This project is a high-performance headless browser engine designed for scalable web automation, data extraction, and…