WordPress Content Scraper avatar

WordPress Content Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
WordPress Content Scraper

WordPress Content Scraper

Scrape posts, pages and content from any WordPress site via the REST API. Clean plain text with authors, categories and tags, ready for LLM training and RAG.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Neil Sangwaiya

Neil Sangwaiya

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Extract posts and pages from any WordPress site as clean plain text, with authors, categories, tags and dates. Built for LLM training data, RAG corpora, content migration and competitive research.

WordPress runs a large share of the web, and almost all of it exposes a public REST API. This Actor uses it directly. No HTML parsing, no broken selectors when a theme changes, no login. Paste a URL and go.

What you get

FieldDescription
idWordPress post ID
titlePlain-text title
urlCanonical link
slugURL slug
publishedAt / modifiedAtUTC timestamps
authorResolved author name
excerptPlain-text excerpt
contentFull article body as clean plain text
wordCountWords in the body
categories / tagsTaxonomy names, not IDs
featuredImageImage URL
commentCountComments, where exposed
siteSource site
scrapedAtISO timestamp

Why the output is different

Plain text, not HTML. Most WordPress scrapers hand back content.rendered, which is raw HTML full of blocks, shortcodes and inline styles. Feeding that to a model wastes tokens on markup. This one strips it properly, including entity decoding, so records drop straight into a vector store.

Authors actually resolve. Sites handle authorship in different ways: some embed it, some expose Yoast metadata, some use Co-Authors Plus, some block the /users endpoint entirely. This Actor tries all four, so you get a name where other scrapers return null.

Category and tag names, not IDs. A number like 17 is useless without a second lookup. This returns ["Education"].

Filters

  • Content type — posts or pages
  • Search query — only matching content
  • Category slug — one category, resolved to its ID for you
  • Published after — a date cutoff for incremental runs
  • Max items — caps the run so cost is predictable

Example input

{
"siteUrl": "https://techcrunch.com",
"contentType": "posts",
"dateFrom": "2026-01-01",
"maxItems": 500
}

Notes

  • Uses only the public, unauthenticated WordPress REST API. No login, no private content.
  • Retries with backoff on rate limits and reports clearly when a site has the REST API disabled.
  • Pages are kept small deliberately, because embedded author and media data makes large pages time out on big sites.
  • Works on self-hosted WordPress and on WordPress.com sites that expose the REST API.