research-by-reddit

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Reddit 深度调研技能

Reddit 深度调研技能

基于 Reddit API (PRAW) 进行市场调研、用户反馈收集、技术方案研究等任务。
基于 Reddit API (PRAW) 进行市场调研、用户反馈收集、技术方案研究等任务。

环境配置

环境配置

需要设置以下环境变量(在
.env
文件中):
bash
REDDIT_CLIENT_ID=your_client_id
REDDIT_CLIENT_SECRET=your_client_secret
REDDIT_USER_AGENT=your_app_name/1.0
OPENROUTER_API_KEY=your_openrouter_key  # 用于 AI 分析
需要设置以下环境变量(在
.env
文件中):
bash
REDDIT_CLIENT_ID=your_client_id
REDDIT_CLIENT_SECRET=your_client_secret
REDDIT_USER_AGENT=your_app_name/1.0
OPENROUTER_API_KEY=your_openrouter_key  # 用于 AI 分析

核心脚本

核心脚本

1. search_reddit.py - Reddit 搜索

1. search_reddit.py - Reddit 搜索

搜索 Reddit 全站或特定 subreddit 的内容。
bash
python scripts/search_reddit.py --query "关键词" [选项]
参数:
  • --query
    : 搜索关键词(必需)
  • --subreddit
    : 限定搜索的 subreddit(可选,不指定则全站搜索)
  • --limit
    : 返回结果数量(默认 25,最大 100)
  • --time_filter
    : 时间范围 [all, year, month, week, day, hour](默认 all)
  • --sort
    : 排序方式 [relevance, hot, top, new, comments](默认 relevance)
  • --output
    : 输出文件路径(可选,默认输出到 stdout)
示例:
bash
undefined
搜索 Reddit 全站或特定 subreddit 的内容。
bash
python scripts/search_reddit.py --query "关键词" [选项]
参数:
  • --query
    : 搜索关键词(必需)
  • --subreddit
    : 限定搜索的 subreddit(可选,不指定则全站搜索)
  • --limit
    : 返回结果数量(默认 25,最大 100)
  • --time_filter
    : 时间范围 [all, year, month, week, day, hour](默认 all)
  • --sort
    : 排序方式 [relevance, hot, top, new, comments](默认 relevance)
  • --output
    : 输出文件路径(可选,默认输出到 stdout)
示例:
bash
undefined

搜索 AI 相关讨论

搜索 AI 相关讨论

python scripts/search_reddit.py --query "AI productivity tools" --limit 50 --time_filter month
python scripts/search_reddit.py --query "AI productivity tools" --limit 50 --time_filter month

在特定 subreddit 搜索

在特定 subreddit 搜索

python scripts/search_reddit.py --query "团建" --subreddit "China_irl" --limit 30
undefined
python scripts/search_reddit.py --query "团建" --subreddit "China_irl" --limit 30
undefined

2. fetch_posts.py - 获取 Subreddit 帖子

2. fetch_posts.py - 获取 Subreddit 帖子

获取指定 subreddit 的热门/最新帖子及评论。
bash
python scripts/fetch_posts.py --subreddit "subreddit名称" [选项]
参数:
  • --subreddit
    : 目标 subreddit(必需)
  • --sort
    : 排序方式 [hot, new, top, rising, controversial](默认 hot)
  • --limit
    : 帖子数量(默认 25)
  • --time_filter
    : 时间范围,仅对 top/controversial 有效(默认 week)
  • --include_comments
    : 是否包含评论(默认 false)
  • --comment_limit
    : 每个帖子的评论数量(默认 10)
  • --output
    : 输出文件路径
示例:
bash
undefined
获取指定 subreddit 的热门/最新帖子及评论。
bash
python scripts/fetch_posts.py --subreddit "subreddit名称" [选项]
参数:
  • --subreddit
    : 目标 subreddit(必需)
  • --sort
    : 排序方式 [hot, new, top, rising, controversial](默认 hot)
  • --limit
    : 帖子数量(默认 25)
  • --time_filter
    : 时间范围,仅对 top/controversial 有效(默认 week)
  • --include_comments
    : 是否包含评论(默认 false)
  • --comment_limit
    : 每个帖子的评论数量(默认 10)
  • --output
    : 输出文件路径
示例:
bash
undefined

获取 startup subreddit 热门帖子

获取 startup subreddit 热门帖子

python scripts/fetch_posts.py --subreddit "startups" --sort hot --limit 20
python scripts/fetch_posts.py --subreddit "startups" --sort hot --limit 20

获取帖子及评论

获取帖子及评论

python scripts/fetch_posts.py --subreddit "smallbusiness" --include_comments --comment_limit 20
undefined
python scripts/fetch_posts.py --subreddit "smallbusiness" --include_comments --comment_limit 20
undefined

3. analyze_reddit.py - 深度分析

3. analyze_reddit.py - 深度分析

对收集的 Reddit 数据进行 AI 分析,生成研究报告。
bash
python scripts/analyze_reddit.py --input "数据文件" --analysis_type "分析类型" [选项]
参数:
  • --input
    : 输入数据文件(JSON 格式,来自 search 或 fetch)
  • --analysis_type
    : 分析类型 [sentiment, topic, summary, competitive, pain_points]
  • --model
    : AI 模型(默认 gemini,可选 claude, gpt-4)
  • --output
    : 输出报告路径
  • --format
    : 输出格式 [json, markdown](默认 markdown)
分析类型说明:
  • sentiment
    : 情感分析,识别正面/负面/中性观点
  • topic
    : 主题聚类,识别讨论热点
  • summary
    : 内容摘要,提取关键信息
  • competitive
    : 竞品分析,识别提及的竞品及评价
  • pain_points
    : 痛点分析,识别用户抱怨和需求
示例:
bash
undefined
对收集的 Reddit 数据进行 AI 分析,生成研究报告。
bash
python scripts/analyze_reddit.py --input "数据文件" --analysis_type "分析类型" [选项]
参数:
  • --input
    : 输入数据文件(JSON 格式,来自 search 或 fetch)
  • --analysis_type
    : 分析类型 [sentiment, topic, summary, competitive, pain_points]
  • --model
    : AI 模型(默认 gemini,可选 claude, gpt-4)
  • --output
    : 输出报告路径
  • --format
    : 输出格式 [json, markdown](默认 markdown)
分析类型说明:
  • sentiment
    : 情感分析,识别正面/负面/中性观点
  • topic
    : 主题聚类,识别讨论热点
  • summary
    : 内容摘要,提取关键信息
  • competitive
    : 竞品分析,识别提及的竞品及评价
  • pain_points
    : 痛点分析,识别用户抱怨和需求
示例:
bash
undefined

情感分析

情感分析

python scripts/analyze_reddit.py --input data/search_results.json --analysis_type sentiment
python scripts/analyze_reddit.py --input data/search_results.json --analysis_type sentiment

生成 Markdown 报告

生成 Markdown 报告

python scripts/analyze_reddit.py --input data/posts.json --analysis_type pain_points --format markdown --output reports/pain_points.md
undefined
python scripts/analyze_reddit.py --input data/posts.json --analysis_type pain_points --format markdown --output reports/pain_points.md
undefined

调研工作流

调研工作流

典型调研流程

典型调研流程

  1. 定义调研目标
    • 明确要研究的问题
    • 确定目标 subreddit 列表
    • 设定时间范围和样本量
  2. 数据收集
    bash
    # 1. 搜索相关讨论
    python scripts/search_reddit.py --query "your topic" --limit 100 --output data/search.json
    
    # 2. 获取热门帖子
    python scripts/fetch_posts.py --subreddit "relevant_sub" --include_comments --output data/posts.json
  3. 数据分析
    bash
    # 3. 运行 AI 分析
    python scripts/analyze_reddit.py --input data/search.json --analysis_type pain_points --output reports/analysis.md
  4. 报告生成
    • 整合多个分析结果
    • 添加结论和建议
    • 输出最终报告
  1. 定义调研目标
    • 明确要研究的问题
    • 确定目标 subreddit 列表
    • 设定时间范围和样本量
  2. 数据收集
    bash
    # 1. 搜索相关讨论
    python scripts/search_reddit.py --query "your topic" --limit 100 --output data/search.json
    
    # 2. 获取热门帖子
    python scripts/fetch_posts.py --subreddit "relevant_sub" --include_comments --output data/posts.json
  3. 数据分析
    bash
    # 3. 运行 AI 分析
    python scripts/analyze_reddit.py --input data/search.json --analysis_type pain_points --output reports/analysis.md
  4. 报告生成
    • 整合多个分析结果
    • 添加结论和建议
    • 输出最终报告

常用调研场景

常用调研场景

场景1:市场调研

场景1:市场调研

bash
undefined
bash
undefined

了解目标用户对某类产品的看法

了解目标用户对某类产品的看法

python scripts/search_reddit.py --query "team building software" --limit 100 --time_filter year python scripts/analyze_reddit.py --input results.json --analysis_type competitive
undefined
python scripts/search_reddit.py --query "team building software" --limit 100 --time_filter year python scripts/analyze_reddit.py --input results.json --analysis_type competitive
undefined

场景2:用户反馈收集

场景2:用户反馈收集

bash
undefined
bash
undefined

收集特定产品的用户反馈

收集特定产品的用户反馈

python scripts/search_reddit.py --query "Notion alternative" --subreddit "productivity" --limit 50 python scripts/analyze_reddit.py --input results.json --analysis_type pain_points
undefined
python scripts/search_reddit.py --query "Notion alternative" --subreddit "productivity" --limit 50 python scripts/analyze_reddit.py --input results.json --analysis_type pain_points
undefined

场景3:技术方案调研

场景3:技术方案调研

bash
undefined
bash
undefined

了解技术选型讨论

了解技术选型讨论

python scripts/fetch_posts.py --subreddit "programming" --sort top --time_filter month --include_comments python scripts/analyze_reddit.py --input posts.json --analysis_type topic
undefined
python scripts/fetch_posts.py --subreddit "programming" --sort top --time_filter month --include_comments python scripts/analyze_reddit.py --input posts.json --analysis_type topic
undefined

输出格式

输出格式

JSON 格式(结构化数据)

JSON 格式(结构化数据)

json
{
  "query": "搜索词",
  "timestamp": "2024-01-15T10:30:00Z",
  "total_results": 50,
  "results": [
    {
      "id": "post_id",
      "title": "帖子标题",
      "author": "用户名",
      "subreddit": "subreddit名",
      "score": 1234,
      "num_comments": 56,
      "created_utc": 1705312200,
      "url": "https://reddit.com/...",
      "selftext": "帖子内容...",
      "comments": [...]
    }
  ]
}
json
{
  "query": "搜索词",
  "timestamp": "2024-01-15T10:30:00Z",
  "total_results": 50,
  "results": [
    {
      "id": "post_id",
      "title": "帖子标题",
      "author": "用户名",
      "subreddit": "subreddit名",
      "score": 1234,
      "num_comments": 56,
      "created_utc": 1705312200,
      "url": "https://reddit.com/...",
      "selftext": "帖子内容...",
      "comments": [...]
    }
  ]
}

Markdown 格式(可读报告)

Markdown 格式(可读报告)

markdown
undefined
markdown
undefined

Reddit 调研报告:[主题]

Reddit 调研报告:[主题]

概述

概述

  • 数据来源:[subreddit 列表]
  • 时间范围:[开始] - [结束]
  • 样本量:[N] 条帖子
  • 数据来源:[subreddit 列表]
  • 时间范围:[开始] - [结束]
  • 样本量:[N] 条帖子

关键发现

关键发现

  1. ...
  2. ...
  1. ...
  2. ...

详细分析

详细分析

主题分布

主题分布

...
...

情感倾向

情感倾向

...
...

结论与建议

结论与建议

...
undefined
...
undefined

注意事项

注意事项

  1. API 限制:Reddit API 有速率限制(约 60 请求/分钟),大量数据收集需分批进行
  2. 数据隐私:不要收集或存储用户个人信息
  3. 内容版权:引用 Reddit 内容时注明来源
  4. 合规使用:遵守 Reddit API 使用条款
  1. API 限制:Reddit API 有速率限制(约 60 请求/分钟),大量数据收集需分批进行
  2. 数据隐私:不要收集或存储用户个人信息
  3. 内容版权:引用 Reddit 内容时注明来源
  4. 合规使用:遵守 Reddit API 使用条款

依赖安装

依赖安装

bash
cd .claude/skills/research-by-reddit/scripts
pip install -r requirements.txt
bash
cd .claude/skills/research-by-reddit/scripts
pip install -r requirements.txt

故障排除

故障排除

常见问题

常见问题

  1. 认证失败
    • 检查 REDDIT_CLIENT_ID 和 REDDIT_CLIENT_SECRET 是否正确
    • 确保 Reddit 应用类型为 "script"
  2. 搜索结果为空
    • 尝试放宽时间范围
    • 检查关键词拼写
    • 尝试不同的 subreddit
  3. AI 分析失败
    • 检查 OPENROUTER_API_KEY 是否有效
    • 确保输入文件格式正确
  1. 认证失败
    • 检查 REDDIT_CLIENT_ID 和 REDDIT_CLIENT_SECRET 是否正确
    • 确保 Reddit 应用类型为 "script"
  2. 搜索结果为空
    • 尝试放宽时间范围
    • 检查关键词拼写
    • 尝试不同的 subreddit
  3. AI 分析失败
    • 检查 OPENROUTER_API_KEY 是否有效
    • 确保输入文件格式正确