W Social Scraper - Profiles, Posts & Followers avatar

W Social Scraper - Profiles, Posts & Followers

Pricing

from $2.49 / 1,000 profiles

Go to Apify Store
W Social Scraper - Profiles, Posts & Followers

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

Zen Studio

Maintained by Community

Actor 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.

W Social users as structured JSON: full profile, posts with like, repost, reply and quote counts, follower graph, and resolved media URLs

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

ParameterTypeDefaultDescription
profileUrlsarrayone mode requiredProfile links, handles, or user IDs. Each becomes a result row.
searchTermsarray[]Find users by name or keyword. Every match is scraped.
scrapeAllAccountsbooleanfalseCollect every public account on the network.
includePostsbooleantrueInclude each user's posts with engagement counts.
maxPostsPerProfileinteger0Maximum posts per user. 0 = all.
includeFollowersbooleanfalseInclude the list of accounts following each user.
includeFollowingbooleanfalseInclude the list of accounts each user follows.
maxFollowersinteger0Cap followers per user. 0 = all.
maxFollowinginteger0Cap following per user. 0 = all.
includeEngagementRecordsbooleanfalseInclude the user's own likes, reposts, lists, and blocks.
downloadMediabooleanfalseSave image and video files to storage and link them on each post.
includeConnectionProfilesbooleantrueFull profile per follower / following entry. Set false for handle, display name, and ID only (much smaller output on large audiences).
includePostEmbedsbooleanfalseAdvanced. Also attach the raw, unprocessed embed structure to each post. The clean media / links / externalLink / quotedPost fields are always present.
includeRawPostRecordbooleanfalseAdvanced. Also attach each post's raw underlying record. Clean text, timestamps, and counts are always present.
maxResultsinteger0Maximum 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, and quotedPost fields, 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.

EventPer 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

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.