Skip to content

jbbottoms/fireling

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

🔥 Fireling

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.

Features

  • 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

Install

pip install -e .

For the API server:

pip install -e ".[api]"

Quick Start

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")

CLI

# 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 8000

Configuration

Set environment variables or pass in code:

Variable Purpose
GOOGLE_API_KEY Gemini API key for LLM extraction
SEARXNG_URL SearXNG instance URL for search

Architecture

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

License

MIT

About

Unified stealth web scraping + LLM extraction. Firecrawl meets Scrapling.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages