482 scrapers live47.7K runs1,562 usersRebuilt in the last 30 days: 482 of 482

Scrapers / Leads & Business

Website Content Crawler logo

Website Content Crawler

hipersoft/website-content-crawler

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. Great for LLM/RAG ingestion, content audits and research.

Total users

20

Monthly users

4

Total runs

206

Per page scraped

$0.0024

Last rebuilt

Oct 26, 2026

Overview

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.

Website Content Crawler input — start URLs, crawl toggle and page limits in the Apify Console

What you get per page

Field Notes
title, description, lang Page title, meta/OG description, <html lang>.
text Readable body text with scripts/nav/header/footer stripped; prefers <main>/<article>.
wordCount Word count over the full extracted text.
headings h1/h2 outline (level + text).
internalLinkCount, externalLinkCount, imageCount Structure signals.
links Arrays of internal/external links (toggle off to slim the output).
canonicalUrl, domain, depth Canonical 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 for reliable access at scale.

Output (one row per page)

Website Content Crawler output example — page text, title and metadata as structured JSON

{
  "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
}

Output schema

Field Type Description
input string (URL) The URL you supplied for this page.
url string (URL) Final URL of the page after any redirects.
domain string Host domain of the page.
depth integer Number of link hops from the start URL.
error string Error message if the page failed, otherwise null.
title string Page title.
description string Meta/OG description of the page.
lang string Page language from <html lang>.
canonicalUrl string Canonical URL declared by the page.
headings array h1/h2 outline as level + text objects.
text string Clean body text with boilerplate stripped.
wordCount integer Word count over the full extracted text.
internalLinkCount integer Number of same-domain links on the page.
externalLinkCount integer Number of external links on the page.
imageCount integer Number of images on the page.
links object Arrays of internal and external link URLs.

FAQ

Do I need an API key or login? No. The Actor works over plain HTTP with no browser and no login — just paste your list of URLs or domains and run.

How many pages can I get per run? Control it with maxPagesPerDomain, maxDepth and a global maxItems cap. With crawl on, it follows same-domain links breadth-first, so one run can extract from a whole site section or many sites at once.

Is crawling website content legal? The Actor collects only publicly available page content — the same pages any visitor can open. Public data is generally collectible, but you are responsible for respecting each site's terms and applicable law.

Does it collect emails or contact info? No. It extracts page content — title, description, headings, body text, word count and link/image counts — not contact details. For emails, phones and socials, use the Website Contact Scraper.

What's the output format? One structured JSON row per page with clean, boilerplate-stripped text and metadata — ready for LLM/RAG ingestion, content audits or text datasets. Export as JSON, CSV or Excel.

Can I connect this to other apps and services? The Website Content Crawler can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. It works with Make, Zapier, Slack, Airbyte, GitHub, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.

Pair content extraction with these web-tool companions:

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.

Input

FieldTypeDescription
urls
URLs
arrayWebsites/pages to extract content from (e.g. "apify.com", "https://example.com/blog"). One per line.
startUrls
Start URLs (advanced)
arrayAlternative to "URLs": a request list of {"url": "..."} objects.
crawl
Crawl internal links
booleanWhen on, follow same-domain links from each start URL (breadth-first) up to the page/depth limits below. When off, only the given URLs are fetched (one row each).
Default: false
maxPagesPerDomain
Max pages per domain
integerWhen crawling, the maximum pages to fetch per start URL.
Default: 1
maxDepth
Max crawl depth
integerWhen crawling, how many link-hops deep to go from the start URL.
Default: 1
sameDomainOnly
Stay on the same domain
booleanOnly follow links on the start URL's domain while crawling.
Default: true
includeLinks
Include link lists
booleanInclude the arrays of internal/external links in each record (counts are always included).
Default: true
textMaxChars
Max text characters
integerTruncate extracted body text to this many characters (word count is computed on the full text).
Default: 40000
maxConcurrency
Concurrency
integerHow many sites to process in parallel.
Default: 10
maxItems
Max pages (total)
integerCap total pages across all sites (0 = no cap).
Default: 0
proxyConfiguration
Proxy configuration
objectProxy configuration. Leave the default — it is tuned for reliable results.
Default: {"useApifyProxy": false}

API

curl -X POST "https://api.apify.com/v2/acts/hipersoft~website-content-crawler/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "urls": [
    "https://apify.com"
  ]
}'

Pricing

EventPricePaid plans from
Page scraped
One web page crawled — title, description, headings, readable text, word count and link/image counts
$0.0024$0.0012

You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.

Related scrapers

North Data Scraper

Look up European companies on North Data: legal name, former names, register number, address, founding date, LEI, business purpose, managing directors and officers, and recent register publications. Germany, UK, France, Austria and 20+ countries. Bulk lookups.

2,467 runs · 5 users · $0.004 / company

SpyFu Domain Scraper

Bulk SEO and PPC reports for any domain from SpyFu: organic keywords, monthly SEO clicks and value, Google Ads budget, paid keywords, top keywords, competitors, top countries and monthly history. Competitor research for agencies. Export CSV/JSON.

185 runs · 7 users · $0.008 / domain report

Trustpilot Reviews Scraper

Scrape Trustpilot reviews and company ratings by company domain or Trustpilot URL: star rating, title, text, reviewer name & country, verification, date, company reply, plus company TrustScore and total reviews.

146 runs · 4 users · $0.0006 / review scraped

ACRA Singapore Company Registry Scraper

Search and export Singapore's full ACRA corporate registry: UEN, entity name, status, incorporation date, address, SSIC industry codes, officers, former names and audit firms. Filter by name, status, entity type or industry. Public open data, no setup.

138 runs · 10 users · $0.01 / company scraped

Wayback Machine Scraper

List every Internet Archive (Wayback Machine) snapshot of a URL or whole domain: timestamp, snapshot URL, status code, MIME type and content digest. Filter by date, status and dedupe. For SEO, OSINT and historical research. No setup.

135 runs · 15 users · $0.002 / snapshot scraped

Clutch.co Agency Scraper

Scrape B2B agency and service-provider profiles from Clutch.co directories: company name, rating, review count, location, min project size, hourly rate, employees, services and profile link. Great for lead generation and competitor research.

129 runs · 3 users · $0.008 / agency scraped
Need a source that isn't here?

Send the site and the fields. We build it and you get it first.

Request a build