Agent Skills › leamsigc/ShortsGenerator › facebook-research-scrape

facebook-research-scrape

GitHub

通过 Chrome DevTools 协议自动化抓取 Facebook 页面及竞品的粉丝、视频帖子等数据,计算互动率并保存历史快照,用于市场趋势分析。

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

触发场景

需要获取 Facebook 页面或竞品数据 执行社交媒体市场调研任务 收集帖子互动指标进行分析

安装

npx skills add leamsigc/ShortsGenerator --skill facebook-research-scrape -g -y
更多选项

不安装直接使用

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

版本历史

  • 7b83166 当前 2026-08-29 02:30

同 Skill 集合

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/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/short-generator/SKILL.md
skills/twitter-research-scrape/SKILL.md
skills/twitter-research-setup/SKILL.md
skills/workflow-conventions/SKILL.md
skills/facebook-research-analyze/SKILL.md
skills/facebook-research-grow/SKILL.md
skills/facebook-research/SKILL.md
skills/ig-research/SKILL.md
skills/reddit-research/SKILL.md
skills/twitter-research-analyze/SKILL.md
skills/twitter-research-report/SKILL.md
skills/twitter-research-topics/SKILL.md
skills/twitter-research/SKILL.md
skills/video-idea-research/SKILL.md
skills/youtube-title/SKILL.md

元信息

文件数
0
版本
7e4e16b
Hash
990f3be5
收录时间
2026-08-29 02:30

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-11-02 02:29
浙ICP备14020137号-1