A Rust command-line tool that fetches data from 55+ websites such as Twitter/X, Reddit, YouTube and Hacker News with a single command.
spider-rs/spider
A concurrency-first web crawler and scraping engine in Rust that renders JavaScript only where needed.
Open-source alternative to:Scrapy Cloud
Apify
- Stars
- 2,790
- Forks
- 316
- Open issues
- 4
- Last commit
- 6 hours ago
What is it?
Spider is a web crawling and scraping engine written in Rust. It streams pages as they are fetched, uses plain HTTP by default, and launches headless Chrome only for pages that require JavaScript rendering. The same API works for a single local script or a distributed worker setup.
The library handles link discovery, depth and concurrency limits, delays, robots.txt handling, subdomain control, and user-agent configuration. Proxies, retries, rate limiting, and stealth options are built in. Users can also run the same engine on Spider Cloud, switching to managed proxies and anti-bot handling with a configuration change.
Bindings and tools are available for Rust, the command line, Node.js, Python, and as an MCP server for AI assistants.
Key features
- 01Streams pages as they are fetched instead of waiting for the crawl to finish.
- 02Uses HTTP by default and launches headless Chrome only for JavaScript-heavy pages.
- 03Controls concurrency, crawl depth, request delay, and robots.txt compliance.
- 04Offers built-in proxy, retry, rate limiting, and stealth options.
- 05Provides bindings for Rust, Node.js, and Python, plus a CLI and MCP server.
Use cases
- Feeding web content into vector stores for LLM or RAG pipelines.
- Monitoring sites for SEO changes or price updates.
- Exporting crawled pages as Markdown, JSON, or WARC files.
- Driving headless Chrome for AI browsing agents.
Quick start
- 1
Add the Rust library to your project
cargo add spider - 2
Or install the command-line tool
cargo install spider_cli - 3
Write a crawler using Website::new and crawl().await (see README example)
Things to know
- Full Spider Cloud features require a paid or free API key from a third-party service.
Topics
FAQ
- What is spider?
- A concurrency-first web crawler and scraping engine in Rust that renders JavaScript only where needed. Spider is a web crawling and scraping engine written in Rust. It streams pages as they are fetched, uses plain HTTP by default, and launches headless Chrome only for pages that require JavaScript rendering. The same API works for a single local script or a distributed worker setup.
- Is spider free to use? What license does it have?
- spider is open source under the MIT license. Check the license terms before using it in commercial products.
- Is spider still maintained?
- Actively maintained. The last commit to spider was on Oct 20, 2026.
- What can I use spider for?
- Feeding web content into vector stores for LLM or RAG pipelines. Monitoring sites for SEO changes or price updates. Exporting crawled pages as Markdown, JSON, or WARC files. Driving headless Chrome for AI browsing agents.
- How do I install spider?
- Add the Rust library to your project: cargo add spider Or install the command-line tool: cargo install spider_cli Write a crawler using Website::new and crawl().await (see README example)
- Where can I get spider?
- The source code and installation instructions are on GitHub: https://github.com/spider-rs/spider
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Open-source Python web crawler that turns any website into clean, LLM-ready Markdown, with CSS/LLM-based structured extraction and an optional hosted API.
An open source, general-purpose AI agent that runs on your machine as a desktop app, CLI, or embeddable API, for code and non-code tasks.
A command-line tool that gives one interface to Google Workspace APIs like Drive, Gmail, Calendar, Sheets, Docs, and Chat, with JSON output for scripts and AI agents.
A browser built for AI agents and you to share: agents run tasks in isolated Spaces while your own tabs and logins stay untouched.
A Rust library for building LLM applications, plus a terminal coding agent built on it whose features are Bevy plugins.