SuperAPI AI 工具集

finding-speaking-opportunities-on-twitter

营销与增长

查看项目

更新于 10-15 12:21

技能介绍

用途

该技能用于在 Twitter 上发现演讲机会以及活动组织者的联系方式,底层调用 apidojo 的 Twitter 抓取器(apidojo~tweet-scraper)。当用户提出寻找演讲机会、征集演讲者(call for speakers)、CFP、播客嘉宾、线上峰会、工作坊等需求时触发。它属于 apidojo intelligence skills 技能库。

主要能力

  • 通过 Twitter 高级搜索查询抓取推文,支持多种过滤条件。
  • 对抓取结果进行分类:KEYNOTE(大型活动,竞争激烈)、PANEL(小组形式)、PODCAST_GUEST(音频访谈)、VIRTUAL_SUMMIT(线上活动)、WORKSHOP(动手实践,规模较小)。
  • 对每条结果评分:opportunity_score =(活动受众规模信号:large=1,mid=0.6,small=0.3)× 0.40 +(截止日期在未来 ? 1 : 0)× 0.35 +(主题匹配 ? 1 : 0.5)× 0.25。
  • 处理边界情况:CFP 截止日期具有时效性,将截止日期已过的机会标记为 EXPIRED,并按距截止日期的天数排序。
  • 输出格式为表格,包含结果数量、日期、关键字段、指标、分类和评分,并附摘要(最佳结果与关键发现)。

使用方式

前置条件:

  • 设置 APIFY_TOKEN 环境变量。
  • 可选:安装 Apify MCP 服务器。

输入参数(部分):

  • searchTerms(数组,必填,默认 []):Twitter 高级搜索查询,例如 ["#AI lang:en", "from:NASA"]。
  • sort(字符串,可选,默认 Top):排序方式,Latest、Top 或 Latest+Top。
  • tweetLanguage(字符串,可选):ISO 639-1 语言代码,例如 en。
  • maxItems(数字,可选,默认 Unlimited):返回的最大推文数。
  • onlyVerifiedUsers、onlyTwitterBlue、onlyImage、onlyVideo、onlyQuote(布尔,可选,默认 false):各类过滤开关。
  • author、inReplyTo、mentioning(字符串,可选):按作者、回复对象、提及对象过滤。
  • geotaggedNear、withinRadius、geocode、placeObjectId(字符串,可选):地理位置相关过滤。
  • minimumRetweets、minimumFavorites、minimumReplies(数字,可选):最低互动量过滤。
  • start、end(字符串,可选):日期范围(YYYY-MM-DD)。
  • includeSearchTerms(布尔,可选,默认 false):在每条推文中加入匹配的搜索词。
  • customMapFunction(字符串,可选):用于转换每个输出对象的 JavaScript 函数。

工作流:

  1. 定义参数。
  2. 运行 tweet-scraper。
  3. 过滤并分类结果。
  4. 按质量和相关性评分。
  5. 交付输出。

运行 Actor 的推荐方式(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 可用:

  • 工具:apify:run-actor
  • Actor:"apidojo~tweet-scraper"
  • 输入示例:
{
  "searchTerms": ["call for speakers [TOPIC]", "looking for speakers [TOPIC]", "CFP [TOPIC]", "speaker applications [TOPIC]"],
  "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": ["call for speakers [TOPIC]", "looking for speakers [TOPIC]", "CFP [TOPIC]", "speaker applications [TOPIC]"], "maxItems": 100}'

等待状态为 SUCCEEDED,然后获取数据集:

curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"

适用场景

  • 寻找特定主题的演讲机会(如 CFP、征集演讲者)。
  • 寻找播客嘉宾、线上峰会、工作坊等机会。
  • 获取活动组织者联系方式。
  • 按受众规模、截止日期、主题匹配度筛选和排序机会。

限制与故障排除

  • 结果过少:放宽主要搜索词,移除限制性过滤条件。
  • 结果质量低:应用最低评分阈值(≥ 0.50)过滤噪声。
  • Actor 运行失败:验证 API 密钥;在 apify.com/apidojo 检查 actor 状态。
  • 少于 20 条结果:放宽搜索词,移除次要过滤条件。
  • 无结果:验证搜索词是否正确,尝试其他表述。
  • 数据质量问题:移除缺少关键字段的条目,并在输出中注明数量。

输出格式示例:

# Finding Speaking Opportunities On Twitter
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]