Agent Skillsleamsigc/ShortsGenerator › facebook-research-scrape

facebook-research-scrape

GitHub

通过CDP自动化抓取Facebook主页及竞品数据,提取粉丝量、视频帖子、互动指标并计算趋势,保存历史快照以支持后续分析。

skills/facebook-research-scrape/SKILL.md leamsigc/ShortsGenerator

Trigger Scenarios

需要获取Facebook页面或竞品的最新运营数据 执行社交媒体市场调研与竞品对比分析

Install

npx skills add leamsigc/ShortsGenerator --skill facebook-research-scrape -g -y
More Options

Use without installing

npx skills use leamsigc/ShortsGenerator@facebook-research-scrape

指定 Agent (Claude Code)

npx skills add leamsigc/ShortsGenerator --skill facebook-research-scrape -a claude-code -g -y

安装 repo 全部 skill

npx skills add leamsigc/ShortsGenerator --all -g -y

预览 repo 内 skill

npx skills add leamsigc/ShortsGenerator --list

SKILL.md

Frontmatter
{
    "name": "facebook-research-scrape",
    "version": "3.0.0",
    "description": "Scrape state — runs the Facebook scraper via Chrome DevTools Protocol.\nExtracts page-level analytics (followers, engagement), top video posts,\nengagement metrics, and hook screenshots. Also scrapes competitor pages,\ncomputes engagement ratios, and saves a historical snapshot for trend\ncomparison across analysis rounds.\n",
    "allowed-tools": [
        "Bash",
        "Read",
        "Write",
        "ChromeDevTools"
    ]
}

Facebook Research — Scrape State (v3)

Scrapes a Facebook page and its competitors. Requires Chrome running with --remote-debugging-port=9222 and Facebook logged in.

Before running

Ensure:

  1. Chrome is open with --remote-debugging-port=9222 flag
  2. Facebook is logged in (tab stays open)
  3. Config exists at .fb-research/projects/<project-name>/config.json (from setup)

Run

# via global skill (Muse ~/.claude/skills/, also read by Opencode):
node "$CLAUDE_SKILL_ROOT/scripts/scrape.js" <project-name> [sessionId] --session $SESSION
# local dev fallback:
node ./skills/facebook-research/scripts/scrape.js <project-name> --session $SESSION
# dataRoot auto-resolved from CWD walk-up; override: --data-root /path/to/.fb-research

Important: Keep the Facebook tab in the foreground (visible, not minimized) while this runs. Chrome throttles background tabs and screenshots will fail.

What the script does

  1. Navigates to the page (config.pageUrl), extracts page stats (followers, likes, category, description)
  2. Opens the Videos tab, scrolls to load posts, collects video post URLs + estimated views
  3. Visits each top post and extracts: views, likes, comments, shares, caption, og:title
  4. Computes engagement ratios + composite score and ranks the top 5
  5. Scrapes each competitor (config.competitors) the same way → competitors/<name>/raw-posts.json
  6. Saves page-analytics.json, raw-posts.json, and appends a snapshot to page-analytics-history.json
  7. Computes the trend vs the previous snapshot (up/down/stable per metric)

Important note on Facebook's DOM

Facebook uses randomized class names. The script always uses aria-label, role, text matching, and [href*="..."] partial URL selectors — never hardcode class names.

Manual fallback (Chrome DevTools CLI)

If the script gets insufficient data, scrape manually:

  1. chrome-devtools navigate_page --url "https://www.facebook.com/<page_name>/"
  2. Scroll + extract page stats / video links via evaluate_script
  3. Navigate into each post for metrics + take hook screenshots
  4. Save page-analytics.json / raw-posts.json with the same schema

Or use WebSearch fallback: websearch "site:facebook.com <page_name> best performing videos 2026" and note data came from search.

Output

.fb-research/projects/<project-name>/
├── page-analytics-history.json          # Global history (appended each run)
├── latest.json                            # -> <YYYY-MM-DD_HHMMSS>
└── <YYYY-MM-DD_HHMMSS>/                  # This run (dated)
    ├── page-analytics.json                # This run stats + top5
    ├── raw-posts.json                     # Full scanned posts
    └── competitors/<name>/raw-posts.json
# plus legacy copies at project root for back-compat

Next step: skill facebook-research-analyze

Version History

  • 7b83166 Current 2026-08-29 02:30

Same Skill Collection

skills/facebook-research-analyze/SKILL.md
skills/facebook-research-engage/SKILL.md
skills/facebook-research-report/SKILL.md
skills/facebook-research-setup/SKILL.md
skills/facebook-research/facebook-research-template/SKILL.md
skills/ig-research-analyze/SKILL.md
skills/ig-research-report/SKILL.md
skills/ig-research-scrape/SKILL.md
skills/ig-research-setup/SKILL.md
skills/ig-research-transcribe/SKILL.md
skills/ig-research/SKILL.md
skills/list-workflows/SKILL.md
skills/new-workflow/SKILL.md
skills/onboard/SKILL.md
skills/reddit-research-generate/SKILL.md
skills/reddit-research-scrape/SKILL.md
skills/reddit-research/SKILL.md
skills/short-generator/SKILL.md
skills/twitter-research-analyze/SKILL.md
skills/twitter-research-report/SKILL.md
skills/twitter-research-scrape/SKILL.md
skills/twitter-research-setup/SKILL.md
skills/twitter-research-topics/SKILL.md
skills/workflow-conventions/SKILL.md
skills/facebook-research-grow/SKILL.md
skills/facebook-research/SKILL.md
skills/twitter-research/SKILL.md

Metadata

Files
0
Version
7b83166
Hash
990f3be5
Indexed
2026-08-29 02:30

Accueil - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-30 02:16
浙ICP备14020137号-1 $Carte des visiteurs$