Reddit Scraper — Posts, Comments & Search avatar

Reddit Scraper — Posts, Comments & Search

Pricing

from $0.10 / 1,000 reddit results

Go to Apify Store
Reddit Scraper — Posts, Comments & Search

Reddit Scraper — Posts, Comments & Search

Scrape public Reddit posts, comments, communities, users, and search results into structured datasets.

Pricing

from $0.10 / 1,000 reddit results

Rating

0.0

(0)

Developer

Crab Walker

Crab Walker

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Reddit Scraper — Posts, Comments, Communities & Users

Fast, API-key-free extraction of public Reddit data. The Actor accepts the same input names and emits the same core output fields as trudax/reddit-scraper-lite, so existing Apify tasks and integrations can move over without remapping.

It supports:

  • subreddit, listing, post, search, and user URLs
  • keyword searches for posts, comments, communities, users, and media
  • nested comment threads
  • pagination with independent post, comment, community, and user limits
  • newest, relevance, hot, top, rising, comments, and time-window sorting
  • post and comment date cutoffs for incremental collection
  • NSFW filtering, deduplication, media/gallery extraction, retries, and proxies
  • a public RSS fallback when Reddit blocks JSON listing endpoints
  • a Jina Reader fallback for public community/profile discovery when Reddit rejects all available cloud and proxy IPs

The Actor uses lightweight HTTP requests rather than a browser. Detailed Reddit JSON responses provide engagement and media fields; when Reddit only permits RSS, the Actor still returns compatible records but fields unavailable in RSS are null.

Community, profile, and keyword-comment search terms are sent to the public Jina Reader service because Reddit rejects these search pages from Apify cloud and proxy IP ranges. No credentials or private Reddit data are sent.

Input

Provide at least one startUrls item or one searches term:

{
"startUrls": [
{ "url": "https://www.reddit.com/r/webscraping/new/" }
],
"maxItems": 100,
"maxPostCount": 100,
"skipCommunity": false,
"proxy": {
"useApifyProxy": true
}
}

Search example:

{
"searches": ["web scraping"],
"searchPosts": true,
"searchComments": true,
"searchCommunities": true,
"sort": "new",
"time": "month",
"postDateLimit": "2026-07-01T00:00:00Z",
"maxItems": 500
}

When startUrls is non-empty, search fields are ignored, matching the reference Actor. Set ignoreStartUrls to true for integrations that retain a prefilled URL.

Output

Every dataset item has a dataType of post, comment, community, or user. Compatible fields include:

{
"id": "t3_abc123",
"parsedId": "abc123",
"url": "https://www.reddit.com/r/example/comments/abc123/example/",
"username": "alice",
"userId": "t2_xyz",
"title": "Example",
"communityName": "r/example",
"parsedCommunityName": "example",
"body": "Post text",
"html": "<div class=\"md\"><p>Post text</p></div>",
"numberOfComments": 12,
"upVotes": 42,
"upVoteRatio": 0.95,
"imageUrls": [],
"videoUrls": [],
"createdAt": "2026-07-23T01:00:00.000Z",
"scrapedAt": "2026-07-23T01:01:00.000Z",
"dataType": "post"
}

SUMMARY in the default key-value store reports result counts by type, request count, and whether maxItems stopped the run.

Local development

npm install
npm test
npm run smoke
npm start

The checked-in local INPUT.json runs a three-result live subreddit test with direct requests and exercises the RSS fallback. Use an Apify or custom proxy for detailed JSON, community profiles, user profiles, and heavily rate-limited comment threads.

Pricing

The intended model is pay per stored result with platform usage included. See ./PRICING.md for the exact Console events, initial price, and the calculator that preserves an 80% markup after Apify's 20% commission.

Responsible use

Scrape only public data. Respect Reddit's terms, applicable law, personal-data requirements, and reasonable request rates. This Actor does not bypass login, private communities, quarantines, or access controls.