用途
Monitoring Trending Topics Twitter By Niche 是一个按细分领域监控 Twitter 热门话题与对话的技能,属于 apidojo 情报技能库,通过 apidojo 的 Twitter Search 抓取器(Actor:apidojo~tweet-scraper)执行。当用户要求监控某领域的热门话题时触发。
主要能力
- 按细分领域执行 Twitter 高级搜索查询,监控热门话题与讨论。
- 支持多种过滤条件:排序方式、语言、最大返回条数、仅认证用户、仅 Twitter Blue 订阅者、仅含图片/视频/引用推文、指定作者、回复对象、提及对象、地理位置相关(geotaggedNear、withinRadius、geocode、placeObjectId)、最低转推/点赞/回复数、时间范围(start、end)等。
- 可将匹配的搜索词附加到每条推文(includeSearchTerms),并支持通过 customMapFunction 用 JavaScript 函数转换每条输出对象。
- 对结果进行分类:BREAKING(速度 > 3×)、RISING(1.5–3×)、STEADY(0.8–1.5×)、DECLINING(< 0.8×)。
- 对每条结果打分:score = trend_velocity = 最近 24 小时推文数 / 前 24 小时推文数。
使用方式
前置条件:设置 APIFY_TOKEN 环境变量;可选安装 Apify MCP 服务器。
输入参数(searchTerms 为必填数组,其余可选):searchTerms、sort(Latest、Top 或 Latest+Top,默认 Top)、tweetLanguage、maxItems、onlyVerifiedUsers、onlyTwitterBlue、onlyImage、onlyVideo、onlyQuote、author、inReplyTo、mentioning、geotaggedNear、withinRadius、geocode、placeObjectId、minimumRetweets、minimumFavorites、minimumReplies、start、end、includeSearchTerms、customMapFunction。
工作流:
- 定义参数。
- 运行 tweet-scraper。推荐使用 run_actor.js(自动处理等待、输出与文件保存):
# 快速回答(在聊天中打印表格)
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}'
# 保存为 CSV
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.csv --format csv
# 保存为 JSON
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.json --format json
APIFY_TOKEN 必须设置在环境变量或 .env 文件中。
若 Apify MCP 可用:
Tool: apify:run-actor
Actor: "apidojo~tweet-scraper"
Input:
{
"searchTerms": ["[NICHE]", "#[niche]trending", "[NICHE] breaking"],
"maxItems": 100
}
REST API 备用方式:
curl -X POST \
"https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchTerms": ["[NICHE]", "#[niche]trending", "[NICHE] breaking"], "maxItems": 100}'
等待状态为 SUCCEEDED 后获取数据集:
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"
- 对结果进行分类(BREAKING / RISING / STEADY / DECLINING)。
- 对每条结果打分(trend_velocity)。
- 交付输出。
输出格式:
# Monitoring Trending Topics Twitter By Niche
Results: [N] | Date: [DATE]
| # | [Key Field] | [Metric 1] | [Metric 2] | [Classification] | [Score] |
|---|------------|-----------|-----------|-----------------|---------|
| 1 | [value] | [value] | [value] | [type] | [0.XX] |
## Summary
Top result: [description]
Key finding: [insight]
适用场景
- 按细分领域监控 Twitter 热门话题与讨论。
- 需要按趋势速度对话题进行分类与打分时。
- 需要按语言、认证状态、媒体类型、互动量、时间范围等条件筛选推文时。
限制与边界情况
- 需区分细分领域内的热门与 Twitter 整体热门,通过检查共现关键词验证话题确实与细分领域相关。
- 结果少于 20 条:扩大搜索词;移除次要过滤条件。
- 无结果:验证搜索词是否正确;尝试其他表述。
- 数据质量问题:移除缺少关键字段的条目;在输出中注明数量。
- 结果过少:扩大主搜索词;移除限制性过滤条件。
- 结果质量低:应用最低分数阈值(≥ 0.50)过滤噪声。
- Actor 运行失败:验证 API 密钥;在 apify.com/apidojo 检查 actor 状态。