Pikabu Scraper - Stories, Comments, Communities, Search
Pricing
from $1.50 / 1,000 result records
Pikabu Scraper - Stories, Comments, Communities, Search
Scrape Pikabu (Пикабу): keyword search, hot/new/best feeds, communities, tags, full story details with media, all comments, creator profiles. Monitoring (NEW, UPDATED, REAPPEARED, EXPIRED), incremental runs, resume, MCP export.
Pricing
from $1.50 / 1,000 result records
Rating
0.0
(0)
Developer
Abot API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Pikabu Scraper
Collect public Pikabu stories, comments and creator profiles. Search by keyword, walk feeds and community or tag listings, or supply individual story links. Story details include text, images, videos, tags, authors and vote counts where the source supplies them. Comments are separate records, so their parent IDs can be used to reconstruct threads.
Why This Scraper?
- Search by keyword with relevance, rating or newest ordering.
- Combine feed links and individual stories in the same collection.
- Return full-size images and video sources, posters and dimensions.
- Collect comments with author information, votes and parent IDs.
- Read profile counters, registration dates, avatars and awards.
- Set shared item limits and individual comment limits.
- Resume story collection and suppress unchanged records in recurring runs.
Data You Get
| Field | Example or meaning |
|---|---|
kind | story, comment or profile |
id | 00000001 |
url | Story, comment permalink or profile URL |
title | Sample Story |
text | Sample public text |
author | Public ID, nickname, profile URL and optional avatar/subscriber count |
community | Community name, slug and URL when present |
tags | ["Sample tag"] |
tagUrls | Tag page links |
rating | 120 |
pluses | 130 positive votes |
minuses | 10 negative votes |
commentsCount | 11 |
publishedAt | 2026-01-01T00:00:00+03:00 |
blocks | Ordered text, image and video content |
images | Full-size story URLs; image objects on comments |
videos | Sources, poster, duration, dimensions and video identifiers |
media | Story image and video counts |
storyId | Parent story ID on a comment |
parentId | Parent comment ID; 0 represents a root comment |
depth | Comment nesting depth |
registeredAt | Profile registration date |
stats | Exact profile rating, comment, story and subscriber counts |
awards | Public profile awards with image and optional link |
changeType | NEW, UPDATED, UNCHANGED or EXPIRED in incremental runs |
Other fields include comment links, edited and story-author appreciation flags, long-story and pinned flags, profile user ID, avatar, background image, following count and verified badge. Profile rows include recent story cards. Optional fields may be null or empty when absent from the source.
Community links collect the community's stories; they do not produce a separate community-header record. Feed and search cards can contain partial text or media. Enable fetchDetails for the full story page, and fetchComments to collect its available comments.
How to Use
Choose a mode and set maxItems. This cap includes stories, comments and profile rows together. 0 means no item limit, so collection continues until the available results end.
Keyword search
Search uses its own query and ordering fields. An empty query searches the general result listing. Feed, story and profile link fields are ignored in this mode.
Sample shape, values are illustrative placeholders.
{"mode": "search","searchQuery": "games","searchOrder": "date","fetchDetails": false,"fetchComments": false,"maxItems": 20}
Mixed feed and story links
Feed and Story link fields appear in one input section. In either feed or story mode, either field accepts feeds, communities, tags, user blogs, individual story URLs and numeric story IDs. Individual stories are read first, then listings are walked; duplicate story IDs are skipped. When a Feed-mode request has no links, it uses the home feed.
Sample shape, values are illustrative placeholders.
{"mode": "feed","feedLinks": ["https://pikabu.ru/new"],"storyUrls": ["https://pikabu.ru/story/sample_story_00000001"],"fetchDetails": false,"fetchComments": false,"maxItems": 20}
Story detail and comments
Individual story links always open full detail. The story is returned before its comments, so a small item cap does not omit the parent story. maxCommentsPerStory limits returned comments for each story; the shared maxItems limit still applies.
Sample shape, values are illustrative placeholders.
{"mode": "story","storyUrls": ["00000001"],"fetchComments": true,"maxCommentsPerStory": 11,"maxItems": 12}
Creator profiles
Profile mode returns the header, then walks the creator's stories. Turn off details and comments when you need profile counters and story cards only.
Sample shape, values are illustrative placeholders.
{"mode": "profile","profileUrls": ["https://pikabu.ru/@sample_creator"],"fetchDetails": false,"fetchComments": false,"maxItems": 5}
Recurring collections and resume
Use resumeFromRunId to skip stories already present in a previous run or dataset. Use incrementalMode for recurring collections with the same scope. The initial run marks records NEW; later runs suppress unchanged records unless emitUnchanged is enabled. Comparisons cover title, text, rating, comment count and selected content-block values; profile counter changes alone are not detected. changedFields currently reports record for an update.
stateKey names a monitoring scope. emitExpired returns records absent from a completed scan. Leave it off when collecting a limited sample. Returned unchanged or expired rows are billed as result items; expired placeholders do not trigger detail or comment enrichment.
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | select | search | Search, feed, story or profile collection. |
searchQuery | string | empty | Keyword or phrase; the form offers a sample value. |
searchOrder | select | relevance | relevance, rating or date. |
feedLinks | string array | home feed in empty Feed mode | Listing URLs or story URLs/IDs; shared with Story links. |
storyUrls | string array | empty | Story URLs/IDs or listing URLs in Feed and Story modes. |
profileUrls | string array | empty | Profile URLs or account names in Profile mode. |
fetchDetails | boolean | true | Open full story pages in search/listing collections; one enrichment event per returned detailed story. |
fetchComments | boolean | true | Collect comments from opened stories; additional enrichment uses round(returned comments / 10) per story. |
maxCommentsPerStory | integer | 0 | Returned comments per story; 0 means all available, subject to maxItems. |
maxItems | integer | 20 | Shared cap across all returned record kinds; 0 means unlimited. |
proxyConfiguration | object | enabled in form | Connection settings in the Console input. |
mcpConnectors | connector array | empty | Optional app connections that receive record summaries. |
notionParentPageUrl | string | empty | Parent page URL or ID for Notion exports. |
maxNotifyListings | integer | 50 | Export limit per connector (1-1000); does not affect dataset size. |
resumeFromRunId | string | empty | Previous run or dataset ID used to skip collected stories. |
incrementalMode | boolean | false | Track supported record changes between matching runs. |
stateKey | string | automatic | Optional monitoring-scope name. |
emitUnchanged | boolean | false | Also return unchanged records. |
emitExpired | boolean | false | Return missing records after a completed scan. |
Charges
Every returned record has a result-item charge. The detail-enrichment event is shared by story details and comment collection: one event per returned detailed story, plus round(returned comments / 10) events per story. These enrichment events are additional to result-item charges.
Rounding uses the nearest integer, with exact halves going to the nearest even integer: 5 comments add 0 events, 6 or 11 add 1, 15 add 2, and 25 add 2. Suppressed comments and failed writes do not count. Counts are based on actual returned comments, not the configured maximum.
On the Free subscription tier, a result item costs $0.003, an enrichment event costs $0.0008 and actor start costs $0.035. Subscription discounts apply; see the actor's current pricing for other tiers. Empty pages and refused requests do not trigger result or enrichment charges; actor start still applies.
One detailed story with 11 comments produces 12 result-item events + 2 enrichment events + actor start, totaling $0.0726 at those rates.
Output Example
Sample shape, values are illustrative placeholders, not from a live story.
{"kind": "story","id": "00000001","title": "Sample Story","url": "https://pikabu.ru/story/sample_story_00000001","author": {"id": "0000", "name": "Sample Author", "url": "https://pikabu.ru/@sample_creator"},"community": null,"tags": ["Sample tag"],"tagUrls": ["https://pikabu.ru/tag/sample"],"rating": 120,"pluses": 130,"minuses": 10,"commentsCount": 11,"publishedAt": "2026-01-01T00:00:00+03:00","timestamp": 1700000000,"seriesId": null,"isLong": false,"isPinned": false,"blocks": [{"type": "text", "text": "Sample public story text", "links": []}],"text": "Sample public story text","images": [],"videos": [],"media": {"images": 0, "videos": 0},"detailFetched": true}
Send results into your apps (MCP connectors)
Authorize an app connector under Apify Settings, API & Integrations. In the input, open Export to your apps (MCP connectors, optional) and select it. Notion requires notionParentPageUrl; maxNotifyListings limits how many records each connector receives.
Each exported record is a condensed, human-readable summary containing a title and key fields. Nested objects are flattened and arrays are shortened; the full JSON always remains in the dataset. Notion gets a page per record, while other connectors use a best-effort write or digest. Leaving connectors empty skips exports. Export failures preserve the scraped dataset.
Plan Requirement
An Apify account is required to run the actor. Only publicly available source content is collected; unavailable or removed pages may produce fewer records, and a run where every requested page is refused fails.
🔗 More scrapers you might like
Pair this actor with these related scrapers from the same team:
| 📱 Wattpad Scraper Scrape Wattpad stories by keyword, tag, category, language or URL. Extract authors... | 🏷️ Wildberries Scraper Scrape Wildberries marketplace: product search with prices (wallet vs retail), discounts... |
| 🛒 Ozon.ru Scraper Extract structured product data from Ozon.ru, Russia’s largest marketplace. Search by... | 🏠 Cian RU Collect property listings from Cian.ru by search filters or direct URLs. Returns... |
| 🏷️ Avito.ru Scraper From $1/1K. Scrape structured listings from Avito.ru by region, category, filters, or... | 🏠 Domclick RU Property Scraper Extract property listings from domclick.ru, one of Russia’s largest real estate portals... |
💬 Support & custom scrapers
- 🐞 Found a bug or a missing field? Open a ticket on the Issues tab. We usually reply within hours.
- 🛠️ Need another site, extra fields or a private build? Email abotapi@proton.me or message Telegram @abotapi.
- ⭐ Enjoying it? A quick review on the actor page helps other users find it.