用途
该技能用于在 Twitter/X 上发现软件工程师和开发者,以支持招聘场景。它通过技术栈关键词、开放求职信号以及工程社区活跃度来定位候选人,将 Twitter 上活跃于技术社区的工程师视为强被动候选人信号。
主要能力
- 按技术栈关键词和角色信号搜索推文,例如 "[TECH_STACK] engineer"、"senior [TECH_STACK]"、"built with [TECH_STACK]"、"[TECH_STACK] open to work" 等。
- 收集搜索结果中的唯一作者用户名。
- 通过 twitter-user-scraper 丰富个人资料。
- 对候选人匹配度进行评分,评分公式为:candidate_score = (stack_confirmed ? 1 : 0) * 0.35 + (open_to_work_signal ? 1 : 0) * 0.30 + (followerCount in 200..20000 ? 1 : 0.6) * 0.20 + (tweeted_in_last_30_days ? 1 : 0) * 0.15。
- 根据最近发推时间将候选人分为 Active(30 天内)、Passive(30–90 天)、Dormant(超过 90 天)。
- 输出候选人列表,包含优先级(开放求职候选人、被动候选人)和 Bio 亮点。
使用方式
前置条件:设置 APIFY_TOKEN 环境变量;可选安装 Apify MCP 服务器。
输入参数包括:startUrls、twitterHandles、twitterUserIds、getFollowers、getFollowing、getRetweeters、includeUnavailableUsers、maxItems、customMapFunction。
工作流步骤:
- 按技术栈和角色信号搜索推文。
- 收集唯一用户名。
- 通过 twitter-user-scraper 丰富个人资料。
- 对候选人匹配度评分。
- 交付候选人列表。
推荐使用 run_actor.js 脚本运行,可自动处理等待、输出和文件保存。示例命令:
node scripts/run_actor.js \
--actor "apidojo~twitter-user-scraper" \
--input '{"param": "value"}'
保存为 CSV:
node scripts/run_actor.js \
--actor "apidojo~twitter-user-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.csv --format csv
保存为 JSON:
node scripts/run_actor.js \
--actor "apidojo~twitter-user-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.json --format json
如果 Apify MCP 可用,可使用 apify:run-actor 工具,Actor 为 "apidojo~tweet-scraper",输入示例:
{
"searchTerms": ["[TECH_STACK] engineer", "senior [TECH_STACK] developer", "built with [TECH_STACK]"],
"maxItems": 300,
"tweetLanguage": "en"
}
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": ["Python engineer", "senior Python developer", "built with Python"], "maxItems": 300}'
丰富个人资料时,使用 apify:run-actor 工具,Actor 为 "apidojo~twitter-user-scraper",输入示例:
{"usernames": ["[username1]", "[username2]", "..."]}
REST API 回退示例:
curl -X POST \
"https://api.apify.com/v2/acts/apidojo~twitter-user-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"usernames": ["handle1", "handle2"]}'
适用场景
- 招聘人员寻找特定技术栈的软件工程师。
- 识别开放求职的候选人。
- 发现被动候选人(未主动求职但活跃于技术社区)。
- 按角色级别(初级、中级、高级)筛选候选人。
限制
- 需要 APIFY_TOKEN 环境变量。
- 结果可能被开发者工具公司账号主导,需过滤 followerCount > 50K 且 bio 提及公司/品牌的账号。
- 位置过滤依赖 Twitter bio 的自由文本,需使用包含匹配,并过滤模糊或非地理位置的条目。
- 对于小众技术栈,结果可能少于 20 条,需扩大搜索范围(如 "Rust" 扩展为 "systems programming")或移除角色级别过滤。
- 机器人账号需标记:follower/following 比率 < 0.05 且 tweetsCount < 10 的账号可能为机器人。
- 开放求职信号较少,大多数被动候选人不会公开表示,需针对被动层级进行个性化外联。
- 结果可能全是公司而非个人,可添加 "-company -official -team -agency" 作为负面搜索词,或过滤 bio 中的第一人称代词。
- 技术栈过于常见时结果过多,可添加位置或资历级别作为第二过滤条件。