关于 building-twitter-prospect-lists
这项技能通过主题推文和用户资料构建 Twitter/X 潜在客户名单,面向营销人员。它指导定义 ICP、筛选和排序候选用户,并整理可用于联系的名单。
主要功能
- 01按关键词和主题搜索推文
- 02收集并去重作者资料
- 03按简介、粉丝数和位置筛选
- 04依据相关性和互动度排序
- 05整理外联名单
适用场景
- 01寻找讨论目标主题的创始人或营销人员
- 02按职位和行业线索建立潜在客户名单
- 03优先选择适合个性化联系的对象
MCP 相关
可通过 Apify MCP 服务运行 tweet-scraper 和 twitter-user-scraper Actor;也提供命令行和 REST API 方式。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ apidojo-io/ apidojo-skills --skill building-twitter-prospect-lists安装后在 Claude Code 中输入/building-twitter-prospect-lists确认已加载。
详细介绍
构建 Twitter 潜在客户名单
在 Twitter/X 上搜索符合目标 ICP(理想客户画像)的个人资料,依据包括简介关键词和基于主题的推文搜索。最终提供一份可直接用于联系的名单,其中包含互动信号和简介背景信息。
前置条件
- 已设置
APIFY_TOKEN环境变量 - 可选:已安装 Apify MCP 服务
输入
| 参数 | 类型 | 是否必填 | 默认值 | 备注 |
|---|---|---|---|---|
searchTerms | array | ✅ | [] | Twitter 高级搜索查询(例如 ["#AI lang:en", "from:NASA"]) |
sort | string | 可选 | Top | 排序方式:Latest、Top 或 Latest+Top |
tweetLanguage | string | 可选 | — | ISO 639-1 语言代码(例如 en) |
maxItems | number | 可选 | 不限 | 返回的推文数量上限 |
onlyVerifiedUsers | boolean | 可选 | false | 仅搜索已认证用户发布的推文 |
onlyTwitterBlue | boolean | 可选 | false | 仅搜索 Twitter Blue 订阅者发布的推文 |
onlyImage | boolean | 可选 | false | 仅搜索包含图片的推文 |
onlyVideo | boolean | 可选 | false | 仅搜索包含视频的推文 |
onlyQuote | boolean | 可选 | false | 仅搜索引用推文 |
author | string | 可选 | — | 筛选特定作者账号 |
inReplyTo | string | 可选 | — | 筛选回复特定账号的推文 |
mentioning | string | 可选 | — | 筛选提及特定账号的推文 |
geotaggedNear | string | 可选 | — | 筛选特定地点附近的推文 |
withinRadius | string | 可选 | — | geotaggedNear 周围的半径 |
geocode | string | 可选 | — | 纬度/经度 + 半径字符串 |
placeObjectId | string | 可选 | — | 筛选标记了某地点的推文 |
minimumRetweets | number | 可选 | — | 最低转推数 |
minimumFavorites | number | 可选 | — | 最低点赞数 |
minimumReplies | number | 可选 | — | 最低回复数 |
start | string | 可选 | — | 此日期之后发布的推文(YYYY-MM-DD) |
end | string | 可选 | — | 此日期之前发布的推文(YYYY-MM-DD) |
includeSearchTerms | boolean | 可选 | false | 将匹配的搜索词添加到每条推文中 |
customMapFunction | string | 可选 | — | 用于转换每个输出对象的 JavaScript 函数 |
工作流
Progress:
- [ ] Step 1: Define ICP and search strategy
- [ ] Step 2: Run tweet-scraper for keyword/topic tweets
- [ ] Step 3: Extract unique authors from results
- [ ] Step 4: Enrich with twitter-user-scraper for bio + follower data
- [ ] Step 5: Filter, rank, and deliver prospect list
步骤 1:定义 ICP 和策略
询问用户:
- 职位关键词,用于搜索 Twitter 简介(例如,“增长负责人”“创始人”“CTO”)
- 主题关键词——ICP 会发布哪些主题的推文?(例如,“SaaS 指标”“PLG”“RevOps”)
- 行业信号——简介中暗示其属于目标行业的关键词(例如,“SaaS”“金融科技”“医疗保健”)
- 粉丝数范围(可选)——例如,1,000–50,000(避免找到无人关注的账号或名人)
- 地点(可选)——例如,“旧金山”“伦敦”
- 名单规模——需要多少位潜在客户?
步骤 2:搜索基于主题的推文
在 Twitter 上搜索与你的 ICP 关注主题相关的推文。积极发布相关主题推文的人是更有意向的潜在客户。
推荐——使用 run_actor.js(自动处理等待、输出和文件保存):
# Quick answer (prints table to chat)
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}'
# Save as CSV
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.csv --format csv
# Save as JSON
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.json --format json
必须在环境中或
.env文件中设置APIFY_TOKEN。
如果 Apify MCP 可用:
Tool: apify:run-actor
Actor: "apidojo~tweet-scraper"
Input:
{
"searchTerms": ["[TOPIC_KEYWORD_1]", "[TOPIC_KEYWORD_2]"],
"maxItems": 200,
"tweetLanguage": "en"
}
如果 Apify MCP 不可用:
curl -X POST \
"https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"searchTerms": ["[TOPIC_KEYWORD]"],
"maxItems": 200
}'
针对每个主题关键词运行搜索。收集所有 author.username 值并去重,即可得到候选名单。
步骤 3:使用个人资料数据补充候选人信息
从步骤 2 中选取前 100–200 个不重复的用户名。获取完整的个人资料数据,以便根据简介关键词和粉丝数进行筛选。
如果 Apify MCP 可用:
Tool: apify:run-actor
Actor: "apidojo~twitter-user-scraper"
Input:
{
"usernames": ["[username1]", "[username2]", "..."],
"maxItems": 100
}
如果 Apify MCP 不可用:
curl -X POST \
"https://api.apify.com/v2/acts/apidojo~twitter-user-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"usernames": ["[username1]", "[username2]"]
}'
第 4 步:根据 ICP 标准筛选
根据资料数据,只保留同时满足以下所有条件的用户:
- 个人简介中至少包含一个职位关键词或行业信号关键词
- 粉丝数在指定范围内(如有指定)
- 地点符合要求(如有指定)——检查
location字段 - 账号不是机器人(有头像、推文超过 10 条、账号注册时间超过 6 个月)
移除:
- 使用默认头像的账号
- 推文数为 0 的账号
- 已认证的超级影响者(粉丝数超过范围)
- 明显的自动化账号
第 5 步:排序和格式化
按以下标准对筛选后的潜在客户排序:
- 相关性得分 = 个人简介中匹配的 ICP 关键词数量
- 互动度代理指标 =(近期推文的点赞数 + 转发数)/ 粉丝数
输出格式
# Twitter Prospect List: [ICP DESCRIPTION]
Generated: [N] prospects | Filters applied: [summary] | Date: [DATE]
| # | Name | Handle | Followers | Job / Bio | Location | Last Active | Profile |
|---|------|--------|-----------|-----------|----------|-------------|---------|
| 1 | [name] | @[handle] | [N] | [bio excerpt] | [city] | [date] | [url] |
| 2 | [name] | @[handle] | [N] | [bio excerpt] | [city] | [date] | [url] |
## Top 10 Highest-Priority Prospects
1. **@[handle]** — "[bio]" | [N] followers | Recently tweeted about: [topic]
2. **@[handle]** — "[bio]" | [N] followers | Recently tweeted about: [topic]
...
## Notes
- [N] candidates found in topic search
- [N] filtered out (didn't match ICP criteria)
- [N] final prospects delivered
- Engagement signals are 24-48h delayed
个性化联系
对于每位重点潜在客户,可以利用其近期推文样本来个性化联系内容。留意他们近期讨论的话题,以便在第一条消息中提及。
故障排除
筛选后结果太少: 扩大个人简介关键词范围(使用 OR 逻辑,而非 AND)。在第 2 步中尝试增加更多主题关键词。 无关账号太多: 在个人简介筛选条件中添加行业专属关键词(例如,要求个人简介中包含 “SaaS” 或 “B2B”)。 地点筛选不起作用: Twitter 地点信息由用户自行填写,且不一致——应将其视为软信号,而非硬性筛选条件。