Website Content Crawler avatar

Website Content Crawler

Pricing

from $2.49 / 1,000 results

Go to Apify Store
Website Content Crawler

Website Content Crawler

Website Content Crawler SD - Website Content Crawler is a web crawling tool that extracts the main content of every page of a website as clean Markdown and text, with title, language and metadata, for LLMs, RAG, vector databases and search indexes.

Pricing

from $2.49 / 1,000 results

Rating

0.0

(0)

Developer

Neuro Scraper

Neuro Scraper

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

5 days ago

Last modified

Share

Website Content Crawler — clean Markdown and text from whole websites

Website Content Crawler crawls a website from one or more start URLs and saves every page's main content as Markdown and plain text, with title, description, language, canonical URL, author, dates and metadata. Menus, footers and cookie banners are removed, so the output is ready for LLMs, RAG pipelines, vector databases and search indexes.

It reads pages over HTTP (no browser), follows links inside the scope you choose, can seed the crawl from the site's sitemaps, respects robots.txt by default and fetches one page at a time per site with a pause between requests.

Input

FieldTypeDefaultMeaning
startUrlsURL listcrawlee.dev/python/docs/guides (prefill)Where the crawl starts
maxPagesinteger20Pages saved (one row each)
maxCrawlDepthinteger5Links away from a start URL; 0 = start URLs only
crawlScopeselectstartUrlPathstartUrlPath (URLs starting with the start URL), sameDomain, sameDomainAndSubdomains
includeUrlGlobs / excludeUrlGlobsglob lists–e.g. https://site.com/docs/**; include globs replace the scope
useSitemapsbooleanfalseAlso queue in-scope URLs from robots.txt sitemaps / /sitemap.xml
respectRobotsTxtbooleantrueSkip disallowed pages, honour Crawl-delay (max 10 s)
htmlTransformerselecttrafilaturatrafilatura, readability, or none (whole cleaned page)
saveMarkdown / saveText / saveHtmlbooleanstrue / true / falseOutput formats
keepMarkdownLinksbooleanfalseKeep [text](url) links in the Markdown
requestDelayMsinteger1000Pause between requests to one host
maxConcurrencyinteger2Pages processed at once across hosts
proxyConfigurationproxyApify datacenterUse RESIDENTIAL for sites that block datacenter IPs

Output (one row per page)

FieldMeaning
url, requestUrl, startUrl, referrerUrl, depth, statusCodeWhere the page came from
title, description, language, canonicalUrl, author, publishedAtPage metadata
markdown, text, htmlMain content in the formats you chose
wordCount, extractorWords in the main content; which extractor produced it
likelyJsRenderedTrue when the server sent almost no text (page builds itself with JavaScript)
truncatedTrue if a field was cut at 1.5 M characters
metadatakeywords, robots, modifiedAt, Open Graph, Twitter card, JSON-LD types, hreflang, content type, response time, size
crawledAtISO time (UTC)

Measured (2026-10-03, see TEST_REPORT.md)

  • crawlee.dev guides: 20 pages in 22 s; with sitemaps + globs: 60 pages in 67 s (59 found through the sitemap).
  • books.toscrape.com: 12 pages in 12 s; / and /index.html saved once (content de-duplication).
  • About 1 page per second per site with the default delay.

Limits

  • No browser: pages that render their text with JavaScript come out (nearly) empty and are flagged likelyJsRendered.
  • PDFs, images and other non-HTML files are skipped. No login or cookies.
  • Default scope follows only URLs that start with the start URL — start from a section or the homepage, or pick sameDomain.
  • Sites behind anti-bot challenges (Cloudflare, DataDome, ...) are logged as blocked and skipped; try a RESIDENTIAL proxy.

Example

{"startUrls": [{"url": "https://crawlee.dev/python/docs/guides"}], "maxPages": 50, "useSitemaps": true,
"excludeUrlGlobs": ["**/docs/next/**"]}