I built Draco to fix this. Itβs a fast, single-binary web scraper written in Rust. You point it at a URL, and it spits out perfectly clean Markdown or structured JSON for LLMs.
The secret sauce is that it doesn't just boot a browser for every request. It uses a tiered escalation engine:
Tier 1 (Stealth Fetch): Draco uses a custom TLS/JA4 fingerprint to perfectly mimic a real browser's network signature at the packet level. It turns out a lot of anti-bot walls will let you right through if your handshake looks correct. In my benchmarks against sites like Cloudflare and Target, Playwright ate ~500MB of RAM and timed out. Draco bypassed them in under a second using just 20MB of RAM.
Tier 2 (V8 Isolate): If it hits a React/Next.js SPA that needs rendering, Draco boots an in-process V8 engine in single-digit milliseconds. It hydrates the DOM and intercepts the hidden JSON APIs the page is callingβgiving you the raw data without the overhead of a graphical browser.
Tier 3 (Real Browser): If it hits an absolute wall, it seamlessly falls back to detecting and driving a real browser on your machine.
I also built in all the tooling to make it a complete drop-in replacement for the hosted services:
Daemon Mode: Run draco serve and you get a persistent HTTP server with a Firecrawl-compatible REST API. You can swap out your API keys and self-host immediately.
Built-in MCP Server: It natively exposes a Model Context Protocol server so you can plug it directly into Claude Desktop or your AI agents.
Web Search: Built-in parallel multi-engine web search (bypassing the need for a Google Search API key).
Interact Mode: Drive a page statefully like a devtools console, persisting cookies across navigations(for LLM's mainly).
Itβs completely open source (MIT/Apache-2.0). I just wanted to put this out there for anyone tired of fighting headless Chromium or paying per-page scraping costs. Grab the binary and throw a difficult URL at it.
Note that it's still a WIP so there might be some unexpected breakages of uncommon sites but for the most part its quite capable, it can handle cf-protected sites and heavy SPA's while everything else fails partially or completely while taking longer or more resources. (tested on example.com, hackernews, cloudflare, glassdoor, bluff.com, target.com, stake.com and thrill.com)
ββββββββ³βββββββββββββββββ³ββββββββ³βββββββ³βββββββββββ³ββββββββββ β Rank β Tool β Score β Pass β Avg Time β Avg RAM β β‘ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ© β #1 β Draco β 769.7 β 8/8 β 3.45 β 216.50 β β #2 β Obscura β 384.5 β 4/8 β 2.68 β 87.59 β β #3 β BrowserOxide β 373.4 β 4/8 β 6.42 β 105.95 β β #4 β Playwright β 342.2 β 4/8 β 1.71 β 535.07 β β #5 β Bouncy β 196.6 β 2/8 β 0.59 β 19.38 β ββββββββ΄βββββββββββββββββ΄ββββββββ΄βββββββ΄βββββββββββ΄ββββββββββ

Discussion (2 Comments)Read Original on HackerNews
great work!