Article Content Extractor
Extract article bodies, bylines, publish dates, excerpts, and hero images from public news, blog, newsroom, and press URLs. Use it as a bounded source step for research, content QA, and RAG ingestion — not as a ranking tool or a full-site crawler. For docs, pricing, policy, product, and help-center pages, use Website Content Extractor.
Open Article Content Extractor on Apify
Articles versus site pages
Use this page when the URLs are article-shaped: news, blog, newsroom, or press. Use Website Content Extractor when the URLs are broader site pages that are not article-shaped.
| Article Content Extractor | Website Content Extractor | |
|---|---|---|
| Intent | Parse news, blog, newsroom, and press article pages | Clean docs, product, pricing, policy, and help-center HTML |
| Max URLs | 300 per run | 200 per run |
| Output format | markdown (default) or text — no HTML emit |
markdown (default), text, or html |
| Sample row | article |
web_content |
| Optional extras | includeImages, generateReport, emitExport |
includeMetadata, maxChargeUsd |
Neither Actor is a ranking tool, a full-site crawler, or a claim of publisher endorsement. Fetch public HTTP(S) URLs you own or are authorized to audit. Do not imply content ownership transfer.
Use cases
- Parse news and blog URLs for headline, author, date, body, excerpt, and hero image.
- Capture press-release pages as structured article rows.
- Source extraction for content QA (title, metadata, thin-content, and page-quality checks).
- Source extraction for indexability and RAG readiness work on authorized article URLs.
- Optionally request a source-linked content-audit report or batch export when at least one article is usable.
- Deliver to a dataset or webhook for research handoff.
Route docs, pricing, policy, product, and help-center pages to Website Content Extractor. This Actor is for article-shaped pages (max 300 URLs).
Low-cost article extraction
The default path keeps raw article rows. generateReport and emitExport stay false unless you need those value events. outputFormat defaults to markdown. includeImages defaults to true.
{
"urls": [
"https://example.com/news/example"
],
"outputFormat": "markdown",
"includeImages": true,
"delivery": "dataset",
"dryRun": false
}
Published output fields: rowType, url, headline, author, publishedAt, articleText, excerpt, heroImage, and sourceUrl. Sample rowType is article. README sample (placeholder article data):
{
"meta": {
"actorName": "article-content-extractor",
"actorTitle": "Article Content Extractor",
"bundle": "Site QA & Content Intelligence Pack",
"fetchedAt": "2026-05-06T00:00:00.000Z",
"totalRows": 1
},
"rows": [
{
"actorName": "article-content-extractor",
"rowType": "article",
"url": "https://example.com/news/example",
"headline": "Example Headline",
"author": "Example Author",
"publishedAt": "2026-05-06",
"articleText": "Example article body.",
"sourceUrl": "https://example.com/news/example",
"fetchedAt": "2026-05-06T00:00:00.000Z"
}
],
"warnings": []
}
Rows also include fetch timestamps, warnings for partial or changed content, and stable IDs when the workflow supports recurring change detection. Optional inline images when includeImages is true; heroImage can still be returned separately when available.
Run an article extraction on Apify
Content audit report and batch export
Set generateReport to true to emit one article-content-audit-report row when at least one article is usable. Set emitExport to true to emit one article-batch-export row when at least one article is usable. Raw article rows remain source context.
{
"urls": [
"https://example.com/blog/post"
],
"generateReport": true,
"delivery": "webhook",
"webhookUrl": "https://example.com/webhook",
"dryRun": false
}
The published Store prices for those value events are $2.50 per content audit report and $5.00 per batch export. Request limits are bounded at 300 URLs, 3 redirects, and 5 MiB per HTML response by default. maxRedirects and maxResponseBytes can be lowered; the runtime never permits more than 10 redirects or 10 MiB.
Generate an article report on Apify
What pages is Article Content Extractor for?
Public news, blog, newsroom, and press URLs. Pass HTTP(S) URLs you own or are authorized to fetch. Maximum 300 URLs per run. Private, loopback, link-local, metadata, reserved, and DNS-resolved private targets are rejected, as are non-HTML responses, excessive redirects, and oversized responses. For docs, pricing, policy, product, and help-center pages, use Website Content Extractor.
What does a result row contain?
Headline, author, publish date, article body, excerpt, hero image when present, source URL, fetch timestamp, and warnings for partial or changed content. Optional inline images when includeImages is true. Sample rowType is article. The published README field list is rowType, url, headline, author, publishedAt, articleText, excerpt, heroImage, and sourceUrl.
How do I start a run?
Open the Actor on the Apify Store and supply a urls list. outputFormat defaults to markdown (text is also available; this Actor does not emit HTML). includeImages defaults to true. delivery defaults to dataset; set webhook plus webhookUrl after the payload shape is useful. dryRun validates without dataset or webhook writes. Published input also includes concurrency (default 5, range 1–10) and timeoutMs (default 15000).
When should I use Website Content Extractor instead?
When the URLs are docs, pricing, policy, product, or help-center pages rather than article-shaped news, blog, or press pages. Website Content Extractor is the broader HTML cleaner; this Actor is specialized for article metadata and body text.
When do a content audit report or batch export emit?
Set generateReport to true to emit one article-content-audit-report row when at least one article is usable. Set emitExport to true to emit one article-batch-export row when at least one article is usable. These are the published value events on this Actor. Raw article rows remain source context.
How is Article Content Extractor priced?
Billing is pay-per-event. The published Store prices are $0.008 per useful article row, $2.50 per article-content-audit-report, and $5.00 per article-batch-export. Actor start is billed as a separate pay-per-event start. Failed or no-content rows stay out of the default dataset. Dry runs, validation-only runs, error-only runs, and no-usable-row recurring polls do not write payable rows. The default dataset is the canonical billable surface.
From $0.008 per useful article row; $2.50 per content audit report
See Article Content Extractor pricing on Apify
How do delivery, webhooks, and dry runs work?
delivery defaults to dataset. A non-dry-run always writes canonical dataset rows first; webhook delivery runs only after dataset and pay-per-event output succeed. A webhook is sent only after dataset billing succeeds and is best effort; a failed webhook is not retried by the Actor and never creates a second charge. dryRun validates input and writes only local output.
Only fetch public HTTP(S) URLs that you own or are authorized to audit. The Actor does not imply content ownership transfer or publisher endorsement.
Open Article Content Extractor on Apify
Related pages
- Content Intelligence pack — choose RSS, Google News, article, or website extraction
- Website Content Extractor
- Wayback Machine Bulk Checker — Internet Archive availability, not live HTML
- RSS & Atom Feed Extractor
- Google News Scraper — query-based discovery before article cleanup
- Apple Podcasts Scraper
- Apple Podcasts Chart Scraper
- Apple Podcasts Reviews Scraper
- Tools