W Social Scraper - Profiles, Posts & Followers
Pricing
from $2.49 / 1,000 profiles
W Social Scraper - Profiles, Posts & Followers
Extract W Social profiles, posts with like, repost and reply counts, followers, and media from wsocial.eu. Search users by keyword, scrape by handle, or collect the whole network. Export to JSON, CSV, or Excel.
Pricing
from $2.49 / 1,000 profiles
Rating
0.0
(0)
Developer
Zen Studio
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
23 days ago
Last modified
Categories
Share
W Social Scraper | Profiles, Posts & Followers from wsocial.eu (2026)
One nested row per user, every field kept: full profiles, posts with like / repost / reply / quote counts, resolved media, and the follower graph from W Social. The most complete W Social scraper on Apify.

Copy to your AI assistant
zen-studio/wsocial-scraper on Apify. Scrapes W Social (wsocial.eu) users: full profiles, posts with engagement counts, followers, and media. Call ApifyClient("TOKEN").actor("zen-studio/wsocial-scraper").call(run_input={...}), then client.dataset(run["defaultDatasetId"]).list_items().items. Provide at least one of profileUrls, searchTerms, or scrapeAllAccounts. Full spec: GET https://api.apify.com/v2/acts/zen-studio~wsocial-scraper/builds/default (Bearer TOKEN) → inputSchema, actorDefinition.storages.dataset, readme. Token: https://console.apify.com/account/integrations
Key Features
- One row per user, fully nested: profile, posts, followers, following, and engagement records collected into a single structured record.
- Posts with real engagement counts: like, repost, reply, quote, and bookmark counts plus resolved image and video links.
- Complete by design: posts are merged from two sources so nothing the platform exposes is left out, and every field is passed through untouched.
- Flexible targeting: scrape specific profiles, search users by keyword, or collect the whole network.
How to Scrape W Social Data
Give the actor one or more profiles, a search term, or turn on whole-network collection. Each user becomes one result row.
Basic: scrape one or more profiles
{"profileUrls": ["wsocial.eu", "matnil01.wsocial.eu"]}
Search users by keyword
{"searchTerms": ["news", "tech"],"maxResults": 50,"maxPostsPerProfile": 20}
Profiles with the follower graph
{"profileUrls": ["wsocial.eu"],"includeFollowers": true,"includeFollowing": true,"maxFollowers": 500,"maxFollowing": 500}
Handles (name.wsocial.eu), full profile links, and user IDs are all accepted in profileUrls. Set any limit to 0 to collect everything.
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
profileUrls | array | one mode required | Profile links, handles, or user IDs. Each becomes a result row. |
searchTerms | array | [] | Find users by name or keyword. Every match is scraped. |
scrapeAllAccounts | boolean | false | Collect every public account on the network. |
includePosts | boolean | true | Include each user's posts with engagement counts. |
maxPostsPerProfile | integer | 0 | Maximum posts per user. 0 = all. |
includeFollowers | boolean | false | Include the list of accounts following each user. |
includeFollowing | boolean | false | Include the list of accounts each user follows. |
maxFollowers | integer | 0 | Cap followers per user. 0 = all. |
maxFollowing | integer | 0 | Cap following per user. 0 = all. |
includeEngagementRecords | boolean | false | Include the user's own likes, reposts, lists, and blocks. |
downloadMedia | boolean | false | Save image and video files to storage and link them on each post. |
includeConnectionProfiles | boolean | true | Full profile per follower / following entry. Set false for handle, display name, and ID only (much smaller output on large audiences). |
includePostEmbeds | boolean | false | Advanced. Also attach the raw, unprocessed embed structure to each post. The clean media / links / externalLink / quotedPost fields are always present. |
includeRawPostRecord | boolean | false | Advanced. Also attach each post's raw underlying record. Clean text, timestamps, and counts are always present. |
maxResults | integer | 0 | Maximum number of users to scrape. 0 = no limit. |
Provide at least one of profileUrls, searchTerms, or scrapeAllAccounts.
What Data Can You Extract from W Social?
Every result is one user, with everything nested inside:
- Profile: handle, display name, description, avatar, banner, follower / following / post counts, account creation date, labels.
- Posts: text, creation time, languages, like / repost / reply / quote / bookmark counts, plus clean
links,hashtags,mentions,externalLink, andquotedPostfields, and reply / repost context. - Media: image and video links per post with thumbnail, alt text, and dimensions, optionally downloaded to storage.
- Graph: followers and following lists (each a full profile view).
- Engagement records: the user's own likes, reposts, lists, and blocks.
Output Example
{"did": "did:plc:e3bwgswz6lniwjadqqfno3c4","handle": "wsocial.eu","displayName": "W Social","description": "We believe in the need for a global, trusted social media platform owned, run, and hosted in Europe.","avatar": "https://cdn.example/avatar/wsocial.jpg","banner": "https://cdn.example/banner/wsocial.jpg","followersCount": 1872,"followsCount": 113,"postsCount": 62,"createdAt": "2026-03-04T14:40:42.058Z","indexedAt": "2026-03-10T09:43:19.849Z","labels": [],"associated": {"lists": 3, "feedgens": 0, "starterPacks": 0, "labeler": false},"verification": {"verifiedStatus": "valid", "trustedVerifierStatus": "none"},"posts": [{"id": "3moiotljpns2y","cid": "bafyreib7ntnp65zxmoginsvagsd6zdxeznxvyvfbxeavsqinkviwdkaokq","text": "Today I am joining W. Launch details: wsocial.eu #WSocial","createdAt": "2026-06-17T16:03:25.361Z","indexedAt": "2026-06-17T16:03:34.365Z","langs": ["en"],"likeCount": 112,"repostCount": 30,"replyCount": 13,"quoteCount": 6,"bookmarkCount": 2,"author": {"did": "did:plc:e3bwgswz6lniwjadqqfno3c4", "handle": "wsocial.eu", "displayName": "W Social", "avatar": "https://cdn.example/avatar/wsocial.jpg"},"media": [{"type": "image", "url": "https://cdn.example/feed/full.jpg", "thumb": "https://cdn.example/feed/thumb.jpg", "alt": "Launch banner", "width": 1200, "height": 800, "kvUrl": "https://api.apify.com/v2/key-value-stores/STORE_ID/records/media_ab12cd34.jpg"}],"links": [{"url": "https://wsocial.eu", "text": "wsocial.eu", "start": 38, "end": 48}],"hashtags": [{"tag": "WSocial", "start": 49, "end": 57}],"mentions": [{"did": "did:plc:axqfxntrrgfanh4pguuhsknp", "start": 0, "end": 8}],"labels": [],"_source": "indexed"},{"id": "3molpg5kcx22z","cid": "bafyreih7c3p7w2n5xqz6tjk4l8vd9m0aqfh2bewxn3rytl5sgkq8m4od2u","text": "Thanks, and welcome to W! More on the roadmap here.","createdAt": "2026-06-17T18:10:00.000Z","langs": ["en"],"likeCount": 8, "repostCount": 0, "replyCount": 1, "quoteCount": 0, "bookmarkCount": 0,"replyTo": {"root": {"id": "3molnheuu222g", "cid": "bafyreifzncqbobfdyogsg4la442mhp3atfvrp6g4l3a4weayopgcsjj6ai"},"parent": {"id": "3molnheuu222g", "cid": "bafyreifzncqbobfdyogsg4la442mhp3atfvrp6g4l3a4weayopgcsjj6ai"}},"quotedPost": {"id": "3mijbjrew7c27", "cid": "bafyreietzacyu4v3voogw3ui6rygfqhlmejain3oqazgnwj576vmqig3tm", "author": "matnil01.wsocial.eu", "text": "The next 90 days are about direction.", "media": [{"type": "image", "url": "https://cdn.example/feed/quoted.jpg"}]},"externalLink": {"url": "https://europa.eu/digital", "title": "Europe's digital future", "description": "Policy overview and roadmap.", "thumb": "https://cdn.example/ext/thumb.jpg"},"media": [{"type": "video", "url": "https://cdn.example/feed/clip.m3u8", "thumb": "https://cdn.example/feed/clip-thumb.jpg", "width": 720, "height": 1280}],"links": [], "hashtags": [], "mentions": [],"_source": "indexed"}// ... more posts],"followers": [{"did": "did:plc:axqfxntrrgfanh4pguuhsknp", "handle": "matnil01.wsocial.eu", "displayName": "Mathias", "description": "Building in public.", "avatar": "https://cdn.example/avatar/mathias.jpg", "createdAt": "2026-04-01T09:00:00.000Z", "indexedAt": "2026-04-02T09:00:00.000Z", "labels": [], "associated": {"lists": 0, "feedgens": 0, "starterPacks": 0, "labeler": false}}// ... more followers],"following": [{"did": "did:plc:zk4f2m9q7w", "handle": "news.wsocial.eu", "displayName": "W News", "avatar": "https://cdn.example/avatar/news.jpg", "labels": []}// ... more following],"engagementRecords": {"likes": [{"id": "3molm5ikwp423", "cid": "bafyreicssfvamvsbwbh3gemov46kvq3qy25wnfycpaegkadj5fmzynhzeq", "subject": {"id": "3mokjupgsk22l", "cid": "bafyreidn5x2k7q9w"}, "createdAt": "2026-06-17T15:00:00.000Z"}// ... more likes],"reposts": [{"id": "3mol9qf2xa11p", "cid": "bafyreih2w8t6", "subject": {"id": "3mok7yd1ze99k", "cid": "bafyreif3p0m1"}, "createdAt": "2026-06-17T15:10:00.000Z"}],"lists": [{"id": "3mok1ab2cd33e", "cid": "bafyreil0p9q8", "name": "Founders", "purpose": "curatelist", "description": "People building in Europe.", "createdAt": "2026-05-01T10:00:00.000Z"}],"blocks": []},"_meta": {"sources": ["indexed"], "complete": true, "postsTruncated": false},"_input": "wsocial.eu"}
author, verification, kvUrl, replyTo, repostOf, quotedPost, and externalLink appear only when relevant: verification on verified accounts, kvUrl when downloadMedia is on, replyTo / quotedPost / externalLink on replies, quotes, and link-card posts, and repostOf on reposts. followers, following, and engagementRecords appear only when their toggles are enabled.
Posts carry a _source flag and the row carries _meta so you can tell at a glance how complete each record is.
Advanced Usage
Ready-made configurations for audience research, profile monitoring, media archiving, and full-network collection.
Archive a profile with all media files
{"profileUrls": ["wsocial.eu"],"maxPostsPerProfile": 0,"downloadMedia": true}
Map an account's full audience
{"profileUrls": ["wsocial.eu"],"includePosts": false,"includeFollowers": true,"includeFollowing": true}
Slim output for a large audience
{"profileUrls": ["wsocial.eu"],"includeFollowers": true,"includeFollowing": true,"includeConnectionProfiles": false}
Followers and following come back as handle, display name, and ID only. On accounts with large audiences this cuts the result size by roughly two thirds, since the connection lists are most of the data.
Collect the whole network
{"scrapeAllAccounts": true,"maxPostsPerProfile": 10}
Deep profile with engagement history
{"profileUrls": ["wsocial.eu"],"includeEngagementRecords": true,"maxPostsPerProfile": 200}
Pricing: Pay Per Event (PPE)
You pay only for what you collect. Profiles and posts are the core product; connections and media downloads are optional and priced lower.
| Event | Per 1,000 |
|---|---|
| Profile result | $2.99 |
| Post result | $2.99 |
| Follower / following entry | $0.99 |
| Media file downloaded | $1.99 |
FAQ
What is W Social (wsocial.eu)?
W Social, also written wsocial or simply W, is a European microblogging network based in Brussels, built around verified human users, privacy, and free speech. Accounts use handles like name.wsocial.eu. This actor turns any W Social user into a structured record of their profile, posts, and connections.
Do I need a W Social account or invite? No. W Social signup is invite-gated, but this actor reads publicly visible profiles and posts without any account, invite, or credentials. Provide a handle or profile link and run.
How many users can I scrape?
As many as you want. Target specific profiles, search by keyword, or turn on whole-network collection. Use maxResults and the per-profile caps to control volume and cost.
Can I get posts with like and repost counts? Yes. Every post includes like, repost, reply, quote, and bookmark counts, alongside the post text, media, and reply or repost context.
Can I download the images and videos?
Yes. Turn on downloadMedia to save each image and video file to storage; the saved file link is added to its post. Leave it off to keep the direct media links only.
Can I also get who a user follows?
Yes. Turn on includeFollowers and includeFollowing. Each entry is a full profile, and you can cap the lists with maxFollowers and maxFollowing on large accounts.
Can I make the output smaller?
Yes. Every result is complete by default, but three switches slim it down when you don't need everything. Turn off includeConnectionProfiles to get followers and following as handle, display name, and ID only; this is the biggest saving, since on accounts with large audiences the connection lists are most of the data. Turn off includePostEmbeds to keep just the resolved media links on each post. Turn off includeRawPostRecord to keep only the top-level post text, timestamps, and counts. Mix and match whichever you need.
How fresh is the data? Each run fetches live data at the moment it runs. Engagement counts, follower numbers, and new posts reflect the current state.
How do I export the data? Download results as JSON, CSV, Excel, XML, or HTML from the run's Storage tab, or pull them through the Apify API. JSON preserves the nested posts and followers best; flat formats expand nested fields into columns.
Is it legal to scrape W Social data? This actor extracts only publicly available data, nothing behind a login. Profiles, posts, and reviewer names are personal data, so you are responsible for complying with W Social's terms and applicable data protection law, including the EU GDPR.
Support
- Bugs: Issues tab
- Features: Issues tab
Legal Compliance
Extracts publicly available data. Users must comply with W Social terms and data protection regulations (GDPR, CCPA).
Scrape W Social profiles, posts, engagement counts, and followers into one structured record per user.