Website Content Extractor for LLM and RAG
Pricing
Pay per event
Website Content Extractor for LLM and RAG
Crawl any website and extract the main readable content of each page as clean markdown - nav, footers, scripts and ads stripped. Built for RAG pipelines and LLM ingestion. One record per page {url, title, markdown, word_count} plus a final site inventory.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Martello Systems
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Website Content Extractor for LLM / RAG
Turn any website into clean markdown for RAG / LLM ingestion. Point it at a domain, and it discovers the site's pages, fetches each one, and extracts only the main readable content - navigation, headers, footers, scripts, cookie banners and ads are stripped out. You get tidy markdown ready to embed, chunk, or feed straight into a vector store.
What it does
- Discovers pages - parses
sitemap.xml(and any sitemap index it points to, plus sitemaps named inrobots.txt). If there's no sitemap, it falls back to a breadth-first crawl of same-domain links from the start URL. - Extracts main content - uses trafilatura to pull the article body as markdown, with a readability-style heuristic fallback. No boilerplate, no markup noise.
- Outputs one record per page plus a final site inventory record.
Egress is routed through Apify residential proxies when available, so it keeps working on sites that block datacenter IPs.
Input
| Field | Type | Default | Description |
|---|---|---|---|
start_url | string (required) | - | Domain or page to start from, e.g. https://example.com |
max_pages | integer | 25 | Cap on pages fetched and extracted (1-500) |
same_domain_only | boolean | true | Stay on the start URL's registered domain when following links |
{"start_url": "https://example.com","max_pages": 25,"same_domain_only": true}
Output
One dataset record per page:
{"url": "https://example.com/pricing","title": "Pricing - Example","markdown": "# Pricing\n\nSimple, transparent plans...\n\n## Starter\n...","word_count": 412}
Plus a final inventory record (also stored in the key-value store under
SITE_INVENTORY):
{"record_type": "inventory","start_url": "https://example.com","domain": "example.com","discovery_method": "sitemap","pages_discovered": 25,"pages_extracted": 24,"pages_failed": 1,"total_words": 9123,"extractor": "trafilatura","pages": [{ "url": "...", "title": "...", "word_count": 412 }]}
Typical uses
- Build a knowledge base from a company or docs site for a RAG chatbot.
- Snapshot a competitor's site as markdown for LLM analysis.
- Bulk-ingest content for embeddings / semantic search.