Social Media Data Hub

v1.0.0

Unified Apify-based retrieval for TikTok, Instagram, X/Twitter, and YouTube profile, post, and comment data with cross-platform normalization for analysis wo...

1· 147·0 current·0 all-time
byGalaxy@galaxy-earth

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for galaxy-earth/social-media-data-hub.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Social Media Data Hub" (galaxy-earth/social-media-data-hub) from ClawHub.
Skill page: https://clawhub.ai/galaxy-earth/social-media-data-hub
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required env vars: APIFY_TOKEN
Required binaries: python3
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install social-media-data-hub

ClawHub CLI

Package manager switcher

npx clawhub@latest install social-media-data-hub
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description match the implementation: scripts call Apify actor endpoints to fetch profiles, posts, and comments and then normalize results. Requested binary (python3) and environment variable (APIFY_TOKEN) are expected for this purpose.
Instruction Scope
SKILL.md only instructs running the included Python scripts; the scripts use APIFY_TOKEN and call api.apify.com. They do not attempt to read unrelated local files, other environment variables, or contact unknown external endpoints. The normalization code is local and clear.
Install Mechanism
There is no install spec (instruction-only / script bundle). No downloads or remote executable installs are performed by the skill itself.
Credentials
Only APIFY_TOKEN is required, which is proportionate. Note: the client embeds the token as a query parameter in Apify API URLs (e.g., ?token={APIFY_TOKEN}), which is an expected Apify usage pattern but can expose the token in logs or referer headers — consider using a scoped/rotating token and minimizing exposure.
Persistence & Privilege
The skill does not request persistent or elevated platform privileges (always:false). It does not modify other skills or system configuration.
Assessment
This skill legitimately needs your APIFY_TOKEN and python3 to start Apify actor runs and retrieve datasets. Before installing: 1) Confirm you trust the Apify actors referenced (clockworks, apify, apidojo, streamers) because running them will consume your Apify account credits and could execute arbitrary actor logic on Apify's platform. 2) Use a least-privilege or rotatable APIFY_TOKEN, and monitor billing/usage — actor runs incur real cost. 3) Be aware the token is passed in URL query parameters (may appear in logs); avoid using long-lived tokens in shared environments. 4) If you need extra assurance, inspect the upstream actor source (on Apify) to verify what each actor scrapes and stores. Overall the skill appears internally consistent and implements what it claims.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

📊 Clawdis
Binspython3
EnvAPIFY_TOKEN
latestvk977wa44qss620kqv70yfxrf4d838jn3
147downloads
1stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

Social Media Data Hub

Use Apify to collect social media data from TikTok, Instagram, X/Twitter, and YouTube through one consistent workflow.

Core Capabilities

  1. Profile lookup - Retrieve profile metadata such as follower count, content volume, and bio.
  2. Bulk post retrieval - Pull recent or popular posts for an account together with engagement metrics.
  3. Single-post lookup - Input a post URL and return a normalized record with key metrics.
  4. Comment retrieval - Fetch comment threads for a supported post URL.
  5. Cross-platform normalization - Map all supported platforms into one shared schema for analysis.

Actor Mapping

PlatformActor IDPurpose
TikTokclockworks/tiktok-scraperProfiles, posts, comments
Instagramapify/instagram-scraperProfiles, posts, comments
X/Twitter (bulk)apidojo/tweet-scraperBulk tweet retrieval (50+ items)
X/Twitter (precise)apidojo/twitter-scraper-liteSingle tweet, conversation, or small batches
YouTubestreamers/youtube-scraperChannels and videos

Usage

All scripts live under {baseDir}/scripts/, are executed with python3, and return JSON.

Profile Lookup

python3 {baseDir}/scripts/fetch_profile.py --platform tiktok --username "khaby.lame"
python3 {baseDir}/scripts/fetch_profile.py --platform instagram --username "natgeo"
python3 {baseDir}/scripts/fetch_profile.py --platform twitter --username "elonmusk"
python3 {baseDir}/scripts/fetch_profile.py --platform youtube --channel-url "https://www.youtube.com/@MrBeast"

Bulk Post Retrieval

python3 {baseDir}/scripts/fetch_posts.py --platform tiktok --username "khaby.lame" --count 20
python3 {baseDir}/scripts/fetch_posts.py --platform instagram --username "natgeo" --count 30
python3 {baseDir}/scripts/fetch_posts.py --platform twitter --username "elonmusk" --count 100
python3 {baseDir}/scripts/fetch_posts.py --platform youtube --channel-url "https://www.youtube.com/@MrBeast" --count 50

Single-Post Lookup

python3 {baseDir}/scripts/fetch_single_post.py --url "https://www.tiktok.com/@user/video/123456"
python3 {baseDir}/scripts/fetch_single_post.py --url "https://www.instagram.com/p/ABC123/"
python3 {baseDir}/scripts/fetch_single_post.py --url "https://x.com/user/status/123456"
python3 {baseDir}/scripts/fetch_single_post.py --url "https://www.youtube.com/watch?v=ABC123"

Comment Retrieval

python3 {baseDir}/scripts/fetch_comments.py --url "https://www.tiktok.com/@user/video/123456" --count 50
python3 {baseDir}/scripts/fetch_comments.py --url "https://www.instagram.com/p/ABC123/" --count 30
python3 {baseDir}/scripts/fetch_comments.py --url "https://x.com/user/status/123456" --count 100

Cross-Platform Normalization

normalize.py is used internally by the fetch scripts and can also be run directly:

echo '<raw_json>' | python3 {baseDir}/scripts/normalize.py --platform tiktok --type post

Unified Data Model

Normalized Post (NormalizedPost)

FieldTypeDescription
platformstringtiktok / instagram / twitter / youtube
post_idstringPlatform-native post ID
post_urlstringPost URL
textstringCaption, text body, or title
created_atstringISO 8601 timestamp
author_namestringAuthor username
author_display_namestringDisplay name
likesintLike count
commentsintComment count
sharesintShare or repost count, or null
viewsintView count, play count, or null
savesintSave or bookmark count, or null
hashtagslistHashtag list
media_typestringvideo / image / text / carousel

Normalized Profile (NormalizedProfile)

FieldTypeDescription
platformstringPlatform identifier
usernamestringUsername or handle
display_namestringDisplay name
biostringBiography or profile summary
followersintFollower count
followingintFollowing count, or null
posts_countintTotal content count, or null
profile_urlstringProfile URL
verifiedboolVerification status

Cost Reference (BRONZE Tier)

OperationTikTokInstagramX/TwitterYouTube
Per post$0.003$0.0023$0.0004$0.003
Bulk 1K items$3.00$2.30$0.40$3.00
Single-item lookup~$0.50 (minimum charge)$0.0023$0.05$0.003

See {baseDir}/references/apify_actors_reference.md for actor inputs, selection guidance, and pricing details.

Notes

  • TikTok has a $0.50 minimum per run, so bulk retrieval is usually more cost-effective than single-item lookups.
  • For X/Twitter, use tweet-scraper when you need 50 or more items and twitter-scraper-lite for smaller batches or single tweets.
  • Instagram comments are limited to 50 comments per post.
  • YouTube comments are not handled by these scripts; use a dedicated YouTube Comments Scraper actor instead.
  • All scripts call the Apify REST API directly and do not rely on the apify-client SDK.

Comments

Loading comments...