Unified stealth web scraping + LLM extraction.
Fireling combines Scrapling's stealth/adaptive scraping with Gemini-powered LLM extraction. One tool for fetching, extracting structured data, searching, and crawling — with anti-detection built in.
- Fast mode — HTTPX-based, fastest for simple pages
- Stealth mode — Playwright with anti-detection, bypasses Cloudflare/WAFs
- Dynamic mode — Full browser automation for JS-heavy SPAs
- LLM extraction — Feed any page to Gemini and get structured data back
- SearXNG search — Privacy-respecting search with optional scraping
- Spider crawl — Configurable crawler with depth limits and custom parsers
- MCP server — Expose all capabilities as Model Context Protocol tools
- REST API — FastAPI server for integration
pip install -e .For the API server:
pip install -e ".[api]"from fireling import fetch, extract, search
# Quick fetch
page = fetch("https://example.com")
print(page.text[:200])
# Stealth fetch (bypasses Cloudflare)
page = fetch("https://protected-site.com", mode="stealth")
# LLM extraction — returns structured JSON
data = extract("https://shop.com/product", schema="product name, price, description")
# Search + scrape
results = search("Python web scraping libraries 2026")# Fetch a page
fireling fetch https://example.com
# Extract structured data
fireling extract https://shop.com/product --schema "name, price"
# Search
fireling search "latest Python frameworks" --max-results 5
# Start API server
fireling serve --port 8000Set environment variables or pass in code:
| Variable | Purpose |
|---|---|
GOOGLE_API_KEY |
Gemini API key for LLM extraction |
SEARXNG_URL |
SearXNG instance URL for search |
fireling/
├── fetch.py # Multi-mode fetching (fast/stealth/dynamic)
├── extract.py # Gemini LLM structured extraction
├── search.py # SearXNG search + scrape
├── crawl.py # Spider crawler
├── config.py # Configuration dataclass
├── cli.py # Click CLI interface
├── api.py # FastAPI REST server
└── mcp_server.py # Model Context Protocol server
MIT