Lemmy Scraper - Posts, Comments, Votes from Any Instance avatar

Lemmy Scraper - Posts, Comments, Votes from Any Instance

Pricing

from $0.34 / 1,000 post delivereds

Go to Apify Store
Lemmy Scraper - Posts, Comments, Votes from Any Instance

Lemmy Scraper - Posts, Comments, Votes from Any Instance

Scrape Lemmy posts and comments from any instance without login: by community, keyword search, post link or front page, with any sort (Hot, New, Top...). Get title, body, link, upvotes, downvotes, score, comment count, author, community and dates. Error rows are free.

Pricing

from $0.34 / 1,000 post delivereds

Rating

0.0

(0)

Developer

Scrapewise Data

Scrapewise Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Lemmy Scraper: posts and comments from any Lemmy instance, with votes, authors and communities

Lemmy Scraper collects posts and comments from Lemmy, the open, federated alternative to Reddit, without an account, a login or an API key. Point it at any instance (lemmy.world by default, or lemmy.ml, sh.itjust.works, programming.dev and hundreds more), then pick communities, search terms, post links or simply the front page, in any sort Lemmy offers: Hot, Active, New, Top of the day, week, month or all time, Most comments and more. Each post comes back as one clean row with title, body, link, upvotes, downvotes, score, comment count, author, community and dates. Turn on comments to get each post's discussion as separate rows, with depth and parent comment.

It is used to build text datasets for AI training and RAG, to monitor what open-source, privacy and tech communities say about a product or a topic, to research trends across the fediverse, and to archive communities over time.

At a glance

WhatPrice
Post deliveredUS$ 0.40 per 1,000 posts on the Free plan (US$ 0.0004 each)
Comment delivered (only with comments on)US$ 0.40 per 1,000 comments
Paid Apify plansBronze US$ 0.38, Silver US$ 0.36, Gold and above US$ 0.34 per 1,000
Run startUS$ 0.005 per run
  • 5 communities with 30 posts each = 150 posts = US$ 0.07 on the Free plan, run start included.
  • The same 150 posts with 20 comments each = 3,150 items = US$ 1.27.
  • Error rows and duplicates are never charged. maxItems is a hard cap, and a spending limit set on the run stops it cleanly with everything delivered so far.

Quick start

Hot posts of one community:

{
"communities": ["technology"],
"maxPostsPerSource": 30
}

Top posts of the week from communities on two instances, with the 20 best comments of each post:

{
"communities": ["linux@lemmy.ml", "https://lemmy.world/c/selfhosted"],
"sort": "TopWeek",
"includeComments": true,
"maxCommentsPerPost": 20
}

Search posts on another instance:

{
"instance": "programming.dev",
"searchQueries": ["rust async", "python packaging"],
"sort": "TopMonth",
"maxPostsPerSource": 50
}

Leave communities, searches and links empty to get the instance front page in the chosen sort.

Input

FieldWhat it does
communitiesCommunity names on the chosen instance (technology), federated names (linux@lemmy.ml) or community links.
searchQueriesKeywords to search in posts. With exactly one community, the search runs inside it.
startUrlsPost (/post/123), comment (/comment/456) or community (/c/name) links from any instance.
instanceThe Lemmy server to read from (default lemmy.world).
sortHot (default), Active, New, Old, Scaled, Controversial, MostComments, NewComments, TopHour to TopAll.
listingTypeFor front page and search: All (federated, default) or Local (this instance only).
maxPostsPerSourcePosts per community, search term or front page (default 30; 0 = as many as the instance returns).
maxItemsCap for the whole run, posts and comments together (0 = no cap).
skipNsfwLeave out posts marked NSFW (default off).
includeCommentsAdd each post's comments as rows (default off).
maxCommentsPerPostComments per post when comments are on (default 20; 0 = all).
commentSortTop (default), Hot, New, Old or Controversial.
proxyConfigurationApify Proxy by default.

community, query, keyword, searchQuery, urls, sortBy, maxResults and limit are accepted too, so inputs written for other Lemmy tools keep working.

Output

Every row has type (post, comment or error).

Post row (type: post):

FieldWhat it is
id, postUrlPost id and link on the instance you read from
originalUrlLink on the instance where the post was written (federation)
title, bodyPost title and text (Markdown)
link, linkTitle, linkDescription, thumbnailUrlShared link and its preview
upvotes, downvotes, score, commentsVote counts and number of comments
publishedAt, updatedAt, newestCommentAtDates in UTC
nsfw, locked, featured, isLocalPost flags; isLocal is true when the post was written on this instance
author, authorDisplayName, authorHandle, authorUrl, authorIsBotAuthor's public username, display name, name@instance handle, profile link and bot flag
community, communityTitle, communityHandle, communityUrlCommunity name, title, name@instance handle and link
instance, position, sourceUrl, scrapedAtWhere it was read, order in the source, what you sent and when

Comment row (type: comment): id, commentUrl, originalUrl, text, upvotes, downvotes, score, replies, depth (1 = direct reply to the post), parentId (the comment it answers), publishedAt, updatedAt, distinguished, postId, postTitle, postUrl, plus the same author and community fields.

One real post row:

{
"type": "post",
"id": 53214894,
"postUrl": "https://lemmy.world/post/53214894",
"title": "Linus Torvalds shares his thoughts on Anti-AI coding rules",
"link": "https://media.piefed.social/posts/TS/lY/TSlYv9DvdaiTI2U.png",
"upvotes": 135,
"downvotes": 14,
"score": 121,
"comments": 83,
"publishedAt": "2026-10-16T17:36:33.541124Z",
"author": "Ek-Hou-Van-Braai",
"authorHandle": "Ek-Hou-Van-Braai@piefed.social",
"community": "linux",
"communityHandle": "linux@lemmy.ml",
"instance": "lemmy.world"
}

And one of its comments:

{
"type": "comment",
"id": 26368467,
"text": "I don't think he thinks about you at all",
"upvotes": 32,
"downvotes": 3,
"score": 29,
"replies": 1,
"depth": 2,
"parentId": 26367731,
"postId": 53214894,
"community": "linux"
}

How it works

Every Lemmy server publishes the same open API. The Actor reads it and turns the answers into flat rows, so runs are fast: 30 posts usually take one or two seconds. Communities hosted on other servers are read through the instance you choose, exactly as its web page shows them; links keep their own instance.

Errors you may see

Every error is a row with errorCode and is never charged:

errorCodeMeaning
INVALID_URLNot a Lemmy community, post or comment link
INVALID_INPUTA field has a wrong value (for example an unknown sort)
NOT_FOUNDThe community, post or comment does not exist on that instance
NO_RESULTSThe community or search returned no posts for this sort
NOT_LEMMYThe server answered, but it is not a Lemmy instance
BLOCKEDThe instance kept refusing requests (rate limit); run it again in a few minutes
UNREACHABLEThe instance did not answer
NOT_REACHEDThe run timeout or the cost guard arrived before this source

Integrations, scheduling and AI agents

  • Schedule a run every hour or day in Apify schedules with sort New to collect every new post of your communities.
  • Export as JSON, CSV, Excel or XML, or read the dataset from the Apify API.
  • Connect it to Make, n8n, Zapier, Slack or Google Sheets through Apify integrations, for example to post brand mentions to a channel.
  • AI agents: call it as a tool through the Apify MCP server in Claude, ChatGPT, Cursor or any MCP client, for example "get this week's top posts of linux@lemmy.ml with their comments and summarize the main complaints".

FAQ

Do I need a Lemmy account? No. The Lemmy API is public for reading; no login, cookie or key is used.

Which instance should I use? The default, lemmy.world, is the largest and sees most federated communities. Use another instance when the community you want lives there or is not federated with lemmy.world.

How do I get communities from other servers? Write them as name@server (for example linux@lemmy.ml) or paste their link. Counts can differ slightly between instances, because each server counts the votes it received.

Can I get every comment of a post? Yes: turn on includeComments and set maxCommentsPerPost to 0.

Is it legal? The Actor reads public data only and returns public usernames, never emails or phone numbers. You are responsible for how you use the data under the laws that apply to you.

Something broke or a field is missing? Open an issue on the Actor page; issues are answered within a day.

Limitations

  • Lemmy search matches words loosely; very generic terms bring unrelated posts.
  • Some instances limit how deep you can page into old posts or rate-limit busy periods.
  • Deleted and removed posts and comments are skipped.
  • User profiles and private messages are not collected.

Changelog

  • 16 Oct 2026: first version: communities, search, post, comment and community links, front page, all Lemmy sorts, comments with depth and parent, any instance.