Reddit Scraper — Posts, Comments, Users & Communities
Pricing
from $2.00 / 1,000 results
Reddit Scraper — Posts, Comments, Users & Communities
Scrape Reddit at scale without login: posts, comment threads, user profiles, and communities — from URLs, keyword search, or whole subreddits. Sentiment, media downloads, and monitoring included.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Kelopr_bk
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Reddit Scraper — built around what you're trying to do
Four common jobs, four ready-to-run setups. Pick the one that matches your goal, copy the input, adapt the subreddit or keyword. Everything below runs request-only — no login, no API keys — and starts on cheap datacenter proxies, escalating to residential only if Reddit rate-limits the run.
One run can return posts, comments, user profiles, and communities at once; each record is tagged with a dataType so mixed output stays sortable.
Sources (give ≥ 1) Output — every row tagged dataType───────────────── ──────────────────────────────────🔗 startUrls ─┐ 📄 post title · body · score · media🔎 searches ─┼─▶ request-only ─▶ 💬 comment threaded · depth · parentId📚 subreddits ─┘ datacenter proxy 🧑 user karma · followers · verified↓ escalates to 🏘️ community members · rules · typeresidential onrate-limitadd-ons: 🎯 filters · 💬 sentiment · 🖼️ downloadMedia · 🔔 onlyNewerThan
🔬 Audience research — understand a community
Goal: know who a subreddit is, what they post, and who the active voices are.
Scrape a whole subreddit's recent posts, then profile the people behind them.
{"subreddits": ["MachineLearning"],"sort": "top","time": "month","maxPostsPerSource": 50,"maxItems": 100}
What comes back: post rows (title, body, flair, score, upvoteRatio, numComments, author, subredditSubscribers) plus a community record for the subreddit — membersCount, onlineUsersCount, subredditType, rules, over18. Drop skipCommunityInfo: true if you only want the posts. When a scrape resolves user profiles, you also get user rows with the full karma breakdown (totalKarma, linkKarma, commentKarma), verified, followersCount, and join date — enough to map who carries the community.
🔔 Brand monitoring — catch every new mention
Goal: get pinged on fresh mentions of your product, wherever they surface.
Search a phrase across all of Reddit (or lock it to one subreddit), then schedule it and return only what's new since last time.
{"searches": ["\"acme analytics\""],"sort": "new","strictKeywordMatch": true,"onlyNewerThan": 1754524800,"maxItems": 100}
What comes back: matching post rows ordered newest-first. strictKeywordMatch drops loose matches that don't contain every keyword; onlyNewerThan (a Unix timestamp) skips anything at or before your last run, so a scheduled run pushes only the new mentions. Restrict the hunt with searchWithinSubreddit, or widen it to comments and communities with searchComments / searchCommunities / searchUsers.
💬 Sentiment & opinion mining — read the room at scale
Goal: measure how people feel, not just count that they spoke.
Pull a post plus its comment thread and score every piece of text.
{"searches": ["\"stable diffusion\""],"searchWithinSubreddit": "MachineLearning","sort": "top","time": "month","scrapeComments": true,"maxCommentsPerPost": 25,"commentSort": "top","sentiment": true}
What comes back: post and comment rows, each carrying sentimentScore and sentimentLabel (positive / neutral / negative). Comment threads come back deep — collapsed reply chains expanded — with depth, isSubmitter (OP flag), score, and parentId so you can rebuild the tree. commentSort accepts top · new · controversial · old · qa · confidence.
🗂️ Dataset building — clean text for AI & ML
Goal: a large, tidy corpus of real post/comment text with metadata.
Mix direct URLs, searches, and whole subreddits in a single run; keep permanent copies of any media.
{"startUrls": [{ "url": "https://www.reddit.com/r/dataisbeautiful/" }],"subreddits": ["aww", "EarthPorn"],"sort": "top","time": "week","postedAfter": "2026-08-01","downloadMedia": true,"maxPostsPerSource": 50}
What comes back: flat post rows with title, body, bodyHtml, postType, domain, award and flag fields, plus media (hasMedia, imageUrls, videoUrls, isGallery, previewImage). startUrls auto-detects each link type — post, subreddit, user, or search page. downloadMedia / downloadAvatars save files to storage as permanent links, since Reddit's own media URLs rotate. Date-bound the corpus with postedAfter / postedBefore (and commentedAfter / commentedBefore for comments).
🗂️ Everything the Actor captures
Sentiment fields attach only with sentiment: true; permanent media/avatar links only with downloadMedia / downloadAvatars. The dataset ships with Overview, Posts, Comments, Users, and Communities views so each record type reads cleanly.
⚙️ Input glossary
| Sources — provide at least one | |
|---|---|
startUrls | Reddit URLs — post, subreddit, user, or search (auto-detected) |
searches | keywords/phrases across Reddit (quote for exact phrase) |
subreddits | subreddits to scrape in full (name, r/name, or URL) |
| Shaping the results | |
|---|---|
searchWithinSubreddit | confine a search to one subreddit |
searchPosts · searchComments · searchCommunities · searchUsers | what a search returns |
sort | relevance · hot · top · new · rising · comments |
time | all · hour · day · week · month · year |
scrapeComments · maxCommentsPerPost · commentSort | collect & order comment threads |
postedAfter · postedBefore · commentedAfter · commentedBefore | date-range filters |
onlyWithFlair · strictKeywordMatch · includeNSFW | flair-only, strict match, NSFW toggle |
skipUserPosts · skipCommunityInfo | trim user history / community record |
| Add-ons & limits | |
|---|---|
sentiment | add sentimentScore + sentimentLabel to posts & comments |
downloadMedia · downloadAvatars | save media/avatars to storage as permanent links |
onlyNewerThan | skip items at/before a Unix timestamp (monitoring) |
maxItems · maxPostsPerSource | global cap and per-source post cap |
dedupe | save each record once per run |
proxyConfiguration | datacenter by default; auto-escalates to residential on rate-limit |
maxConcurrency · maxRetries · requestTimeoutSecs | throughput vs. thoroughness |
A note on empties: link and image posts have no body (their contentUrl points to the linked content), and deleted/removed comment bodies come back blank rather than as [deleted].
⭐ Running this on real work? A quick review on the Apify Store helps other Reddit researchers find it — and tells me which corner to sharpen next.
Tags: reddit · reddit scraper · social media · comments scraper · subreddit scraper · sentiment analysis · user profiles · trend tracking · brand monitoring