---
name: facebook-posts
description: Facebook 主页帖子批量提取工具。用户只需提供 Facebook 账号主页 URL，即可拉取该主页近期帖子：正文、点赞、评论、图片/视频链接、发布时间、链接与作者信息，支持逐页翻页，表格呈现。适用于竞品账号内容拆解学习、创作者作品存档、素材搬运二次剪辑、自营账号备份、达人合作背调等场景。当用户需要提取、抓取、拉取 Facebook 主页帖子列表时使用。触发词：Facebook帖子、Facebook账号学习、FB主页帖子、脸书帖子提取、facebook posts、FB帖子。
---

# Facebook 主页帖子提取

## 1. 简介

Facebook 主页帖子批量提取工具。用户粘贴主页 URL 即可按发布时间倒序拉取帖子数据（正文、互动量、媒体链接、链接），支持翻页，对话中以 Markdown 表格摘要呈现。

**适用对象**：内容创作者 / 运营人员、MCN 与达人商务、品牌方 / 市场调研、数据分析师。

## 2. 核心功能

作品拉取：输入主页 URL 即可获取该主页近期帖子，包含正文、点赞、评论等互动数据与帖子链接。
链接解析：支持 facebook.com/用户名 格式的主页链接，自动提取。
分页浏览：支持翻页查看更多帖子，每页最多50条。
表格呈现：对话中以 Markdown 表格摘要展示帖子数据，方便浏览，JSON 文件保留完整字段与全部媒体链接。

## 3. 一键安装

### 获取 API Key

前往 [红狐 hub](https://redfox.hk/settings/api-keys?source=github) 注册登录并创建 API 密钥。

### 配置环境变量

```bash
export REDFOX_API_KEY="ak_xxxx..."      # Git Bash / Linux / macOS
$env:REDFOX_API_KEY="ak_xxxx..."        # PowerShell
```

无需第三方依赖，Python 3.7+ 标准库即可运行。

## 4. 使用指南

### 基础使用（默认获取 1 页最近帖子）

```bash
python scripts/fetch_posts.py --query "用户原话（含主页链接）"
python scripts/fetch_posts.py --url "https://www.facebook.com/Meta"
```

交互规则：

- 用户未提供主页 URL 时，先向用户索要链接，不要凭空猜测
- 默认抓取 1 页（该主页最近的帖子），输出表格后若还有更多数据，询问用户是否继续翻页

### 翻页

```bash
python scripts/fetch_posts.py --url "<主页URL>" --continue
```

脚本自动读取上次数据文件中的 `paginationToken` 取下一页，与历史数据按 postId 去重合并后重新落盘。

### 常用指令速查

| 用户意图 | 典型触发词 | 对应操作 |
| -------- | ---------- | -------- |
| 提取主页帖子 | 抓FB帖子、Facebook帖子列表、脸书主页帖子 | `--url` 抓 1 页并表格展示 |
| 翻页 | 下一页、继续、更多帖子 | `--continue` |

## 5. 输出格式

读取脚本输出的 JSON 数据文件后，按以下模板输出表格：

```
📄 Facebook 主页帖子 · {作者名}
主页：{url} ｜ 数据时间：{generatedAt}
本页 {fetchedThisRun} 条（累计 {accumulatedTotal} 条）｜ 还有更多数据：{是/否}

| 序号 | 发布时间 | 文案摘要 | ❤️ 点赞 | 💬 评论 | 媒体 | 帖子链接 |
|:---:|--------|--------|:---:|:---:|--------|--------|
| 1 | 2026-10-18 12:07 | 男友說，我們的小豆樹越長越大… | 3,564 | 77 | 🖼️ 图片×1 | [查看帖子](permalink) |
```

**字段规则**：

- 发布时间：ISO 时间转北京时间（UTC+8），格式 `YYYY-MM-DD HH:MM`；转换失败时原样展示
- 文案摘要：caption 换行改为空格，截取前 50 字，超出加 `…`；空文案显示 `—`
- 媒体列：videoUrl 或 videoDuration 有值 → `🎬 视频`；mediaUrls 非空 → `🖼️ 图片×N`（仅 imageUrl 有值时按 ×1）；均无 → `—`
- 帖子链接：[查看帖子](permalink)，无 permalink 显示 `—`
- 表格列完整输出，不得省略任何列；表格条数与 JSON 数据一致
- JSON 文件保留全部字段：完整 caption、全部媒体 URL、作者信息、互动数据、分页游标；媒体链接为 fbcdn 临时签名 URL，有时效性，如需下载请尽快使用

表格输出后追加：

```
⚡ 更多操作
• 数据已保存至 {数据文件路径}（含完整字段与全部媒体链接）
• 是否继续翻页获取更多帖子？（本次累计 {total} 条）
```

## 6. 使用场景

| 场景 | 痛点 | 使用方式 |
| ---- | ---- | -------- |
| 竞品内容拆解学习 | 想系统研究竞品账号内容策略 | 输入竞品主页 URL，逐页拉取帖子做选题 / 文案 / 互动分析 |
| 创作者作品存档 | 担心喜欢的作品被删 | 抓取全部帖子，保存数据与媒体链接 |
| 素材搬运二次剪辑 | 批量收集素材 | 全量抓取后按媒体链接批量处理 |
| 自营账号备份 | 防账号内容丢失 | 定期抓取自己主页帖子做本地备份 |
| 课程 / 教程离线囤货 | 教程视频想反复看 | 提取帖子及视频链接归档 |
| 无水印源文件交付 | 甲方要求提供源素材 | 拉取帖子媒体链接交付 |
| 达人合作背调 | 合作前快速了解对方作品 | 抓取对方主页近期帖子做内容质量评估 |

## 7. 项目架构

```
facebook-posts/
├── SKILL.md                     # 本文件
├── scripts/
│   └── fetch_posts.py           # 提取脚本（URL 解析 / 翻页 / JSON 落盘）
├── references/
│   └── api_docs.md              # 接口文档（技术参考）
└── output/                      # 数据文件输出目录（运行时自动创建）
```

| 文件 | 用途 |
| ---- | ---- |
| [scripts/fetch_posts.py](scripts/fetch_posts.py) | 主页帖子提取（--url / --query / --continue） |
| [references/api_docs.md](references/api_docs.md) | 接口详细文档与错误码 |

## 8. 常见问答

**Q: 提示 API Key 已被禁用（code=3105）？**
A: 前往红狐 hub 重新生成密钥并更新 `REDFOX_API_KEY` 环境变量。

**Q: 返回空数据？**
A: 确认 URL 为 `facebook.com/用户名` 格式的主页链接（非单条帖子链接）、主页为公开状态。

**Q: 每页多少条？**
A: 每页最多 50 条，以接口实际返回为准；翻页依赖 `paginationToken`，为空表示无更多数据。

**Q: 媒体链接能保存多久？**
A: fbcdn 签名 URL 有时效性（数小时到数天），需要下载请尽快使用，或重新提取获取新链接。
