Website Content Crawler — Text, Titles & Metadata avatar

Website Content Crawler — Text, Titles & Metadata

Pricing

from $0.0024 / page scraped

Go to Apify Store
Website Content Crawler — Text, Titles & Metadata

Website Content Crawler — Text, Titles & Metadata

Extract clean, readable content from any list of websites: page title, meta description, headings, main body text, word count and link/image counts. Optional same-domain crawl. Bulk-ready, no browser, no login. Great for LLM/RAG ingestion, content audits and research.

Pricing

from $0.0024 / page scraped

Rating

0.0

(0)

Developer

hiper soft

hiper soft

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 hours ago

Last modified

Share

Turn any list of websites into clean, structured content. For each page the Actor extracts the title, meta description, headings, main body text (boilerplate stripped), word count, language and link/image counts — over plain HTTP, no browser and no login. Optionally crawl internal links to pull a whole section.

Ideal for LLM/RAG ingestion, content audits, competitive research, and building text datasets from many sites at once.

What you get per page

FieldNotes
title, description, langPage title, meta/OG description, <html lang>.
textReadable body text with scripts/nav/header/footer stripped; prefers <main>/<article>.
wordCountWord count over the full extracted text.
headingsh1/h2 outline (level + text).
internalLinkCount, externalLinkCount, imageCountStructure signals.
linksArrays of internal/external links (toggle off to slim the output).
canonicalUrl, domain, depthCanonical link, host, and crawl depth.

Input

{
"urls": ["https://apify.com/blog", "example.com"],
"crawl": true,
"maxPagesPerDomain": 20,
"maxDepth": 2
}
  • urls — pages/sites to extract, one per line. (Or use startUrls.)
  • crawl — follow same-domain links (BFS). Off = just the given URLs.
  • maxPagesPerDomain / maxDepth — crawl limits.
  • sameDomainOnly — keep the crawl on the start domain (default on).
  • includeLinks — include the internal/external link arrays (counts always included).
  • textMaxChars — truncate stored body text (word count uses the full text).
  • maxConcurrency / maxItems — parallelism and a global page cap.
  • proxyConfiguration — optional; enable if a target blocks datacenter IPs.

Output (one row per page)

{
"input": "https://apify.com/blog",
"url": "https://apify.com/blog",
"domain": "apify.com",
"depth": 0,
"title": "Apify Blog",
"description": "News and tutorials…",
"lang": "en",
"headings": [{ "level": 1, "text": "Apify Blog" }],
"text": "…clean readable content…",
"wordCount": 812,
"internalLinkCount": 47,
"externalLinkCount": 6,
"imageCount": 12,
"error": null
}

Notes

Every site is hard-capped in time so one slow page can never stall a bulk run. Only publicly available page content is collected; respect each site's terms.