โ† All skills
Tencent SkillHub ยท Developer Tools

Social Media Data Extractor

Extract public posts, comments, and profiles from Instagram, TikTok, and Reddit via Apify for trend analysis and audience insights with structured JSON output.

skill openclawclawhub Free
0 Downloads
0 Stars
0 Installs
0 Score
High Signal

Extract public posts, comments, and profiles from Instagram, TikTok, and Reddit via Apify for trend analysis and audience insights with structured JSON output.

โฌ‡ 0 downloads โ˜… 0 stars Unverified but indexed

Install for OpenClaw

Quick setup
  1. Download the package from Yavira.
  2. Extract the archive and review SKILL.md first.
  3. Import or place the package into your OpenClaw setup.

Requirements

Target platform
OpenClaw
Install method
Manual import
Extraction
Extract archive
Prerequisites
OpenClaw
Primary doc
SKILL.md

Package facts

Download mode
Yavira redirect
Package format
ZIP package
Source platform
Tencent SkillHub
What's included
SKILL.md

Validation

  • Use the Yavira download entry.
  • Review SKILL.md after the package is downloaded.
  • Confirm the extracted package contains the expected setup assets.

Install with your agent

Agent handoff

Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.

  1. Download the package from Yavira.
  2. Extract it into a folder your agent can access.
  3. Paste one of the prompts below and point your agent at the extracted folder.
New install

I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.

Upgrade existing

I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.

Trust & source

Release facts

Source
Tencent SkillHub
Verification
Indexed source record
Version
1.0.0

Documentation

ClawHub primary doc Primary doc: SKILL.md 17 sections Open source page

Overview

This skill enables Claude to extract public data from Instagram, TikTok, and Reddit for trend analysis, content research, competitor monitoring, and audience insights โ€” powered by the Apify platform. ๐Ÿ”— Sign up for Apify here: https://www.apify.com/?fpr=dx06p

What This Skill Does

Extract public posts, hashtags, and profiles from Instagram Scrape trending videos, comments, and creator stats from TikTok Pull posts, threads, comments, and subreddit data from Reddit Aggregate data across platforms for unified trend analysis Output structured JSON data ready for analysis, dashboards, or export

Step 1 โ€” Get Your Apify API Token

Go to https://www.apify.com/?fpr=dx06p and create a free account Once logged in, navigate to Settings โ†’ Integrations Direct link: https://console.apify.com/account/integrations Copy your Personal API Token โ€” format: apify_api_xxxxxxxxxxxxxxxx Store it as an environment variable: export APIFY_TOKEN=apify_api_xxxxxxxxxxxxxxxx Free tier includes $5/month of free compute โ€” enough for regular trend monitoring runs.

Step 2 โ€” Install the Apify Client

npm install apify-client

Instagram

Actor IDPurposeapify/instagram-scraperScrape posts, hashtags, profiles, reelsapify/instagram-hashtag-scraperExtract posts by hashtagapify/instagram-comment-scraperPull comments from a specific post

TikTok

Actor IDPurposeapify/tiktok-scraperScrape videos, profiles, hashtag feedsapify/tiktok-hashtag-scraperTrending content by hashtagapify/tiktok-comment-scraperComments from a specific video

Reddit

Actor IDPurposeapify/reddit-scraperPosts and comments from subredditsapify/reddit-search-scraperSearch Reddit by keyword

Extract Instagram Posts by Hashtag

import ApifyClient from 'apify-client'; const client = new ApifyClient({ token: process.env.APIFY_TOKEN }); const run = await client.actor("apify/instagram-hashtag-scraper").call({ hashtags: ["trending", "viral", "fyp"], resultsLimit: 50 }); const { items } = await run.dataset().getData(); // Each item contains: // { id, shortCode, caption, likesCount, commentsCount, // timestamp, ownerUsername, url, hashtags[] } console.log(`Extracted ${items.length} posts`);

Extract TikTok Trending Videos by Hashtag

const run = await client.actor("apify/tiktok-hashtag-scraper").call({ hashtags: ["trending", "lifehack"], resultsPerPage: 30, shouldDownloadVideos: false }); const { items } = await run.dataset().getData(); // Each item contains: // { id, text, createTime, authorMeta, musicMeta, // diggCount, shareCount, playCount, commentCount }

Scrape a Subreddit for Trend Analysis

const run = await client.actor("apify/reddit-scraper").call({ startUrls: [ { url: "https://www.reddit.com/r/technology/" }, { url: "https://www.reddit.com/r/worldnews/" } ], maxPostCount: 100, maxComments: 20, sort: "hot" }); const { items } = await run.dataset().getData(); // Each item contains: // { title, score, upvoteRatio, numComments, author, // created, url, selftext, subreddit, comments[] }

Multi-Platform Trend Aggregation

const [igRun, ttRun, rdRun] = await Promise.all([ client.actor("apify/instagram-hashtag-scraper").call({ hashtags: ["aitools"], resultsLimit: 30 }), client.actor("apify/tiktok-hashtag-scraper").call({ hashtags: ["aitools"], resultsPerPage: 30 }), client.actor("apify/reddit-search-scraper").call({ queries: ["AI tools 2025"], maxItems: 30 }) ]); const [igData, ttData, rdData] = await Promise.all([ igRun.dataset().getData(), ttRun.dataset().getData(), rdRun.dataset().getData() ]); const aggregated = { instagram: igData.items, tiktok: ttData.items, reddit: rdData.items, totalPosts: igData.items.length + ttData.items.length + rdData.items.length, extractedAt: new Date().toISOString() };

Using the REST API Directly

const response = await fetch( "https://api.apify.com/v2/acts/apify~tiktok-scraper/runs", { method: "POST", headers: { "Content-Type": "application/json", "Authorization": `Bearer ${process.env.APIFY_TOKEN}` }, body: JSON.stringify({ hashtags: ["viral"], resultsPerPage: 25 }) } ); const { data } = await response.json(); const runId = data.id; // Poll for completion const resultRes = await fetch( `https://api.apify.com/v2/actor-runs/${runId}/dataset/items`, { headers: { Authorization: `Bearer ${process.env.APIFY_TOKEN}` } } ); const posts = await resultRes.json();

Trend Analysis Workflow

When asked to analyze trends, Claude will: Identify the target platform(s) and keywords/hashtags Run the appropriate Apify actor(s) in parallel when multi-platform Collect all posts with engagement metrics (likes, views, comments, shares) Sort & rank content by engagement rate or volume Identify patterns โ€” recurring hashtags, peak posting times, top creators Return a structured report with top trends, key metrics, and actionable insights

Output Data Structure (Normalized)

{ "platform": "tiktok", "id": "7302938471029384", "text": "This AI tool is insane #aitools #viral", "author": "techreviewer99", "engagement": { "likes": 142300, "comments": 4820, "shares": 9100, "views": 2300000 }, "hashtags": ["aitools", "viral"], "publishedAt": "2025-02-18T14:32:00Z", "url": "https://www.tiktok.com/@techreviewer99/video/7302938471029384" }

Best Practices

Always scrape only public content โ€” never attempt to access private profiles Set reasonable resultsLimit values (50โ€“200) to stay within your Apify quota For recurring analysis, schedule actor runs using Apify Schedules in the console Store results in Apify Datasets for persistent access and historical comparison Use sort: "hot" on Reddit and trending endpoints on TikTok for most relevant data Add a proxyConfiguration block when scraping at scale to avoid rate limits: proxyConfiguration: { useApifyProxy: true, apifyProxyGroups: ["RESIDENTIAL"] }

Error Handling

try { const run = await client.actor("apify/tiktok-scraper").call(input); const dataset = await run.dataset().getData(); return dataset.items; } catch (error) { if (error.statusCode === 401) throw new Error("Invalid Apify token"); if (error.statusCode === 429) throw new Error("Rate limit hit โ€” reduce request frequency"); if (error.message.includes("timeout")) throw new Error("Actor timed out โ€” try a smaller batch"); throw error; }

Requirements

An Apify account โ†’ https://www.apify.com/?fpr=dx06p A valid Personal API Token from Settings โ†’ Integrations Node.js 18+ for the apify-client package No platform API keys required โ€” Apify handles all platform access

Category context

Code helpers, APIs, CLIs, browser automation, testing, and developer operations.

Source: Tencent SkillHub

Largest current source with strong distribution and engagement signals.

Package contents

Included in package
1 Docs
  • SKILL.md Primary doc