GitHub 项目与贡献者查找器 API 技能
📖 简介
该技能利用 BrowserAct 的 GitHub 项目与贡献者查找器 API 从 GitHub 提取项目详情和贡献者联系信息。只需提供关键词、最低星标数和更新日期过滤器,BrowserAct 便会遍历搜索结果、提取仓库指标并获取详细的贡献者档案,通过 API 直接返回所有结果,无需构建爬虫脚本或处理速率限制。
✨ 功能特性
- 无幻觉:预设工作流避免 AI 生成幻觉,确保数据提取稳定精确。
- 无验证码问题:无需处理 reCAPTCHA 或其他验证挑战。
- 无 IP 限制:无需处理区域 IP 限制或地理围栏。
- 执行更快:与纯 AI 驱动的浏览器自动化方案相比,任务执行速度更快。
- 高性价比:相比高 Token 消耗的 AI 方案,显著降低数据获取成本。
🔑 API 密钥设置
在运行前,请检查 BROWSERACT_API_KEY 环境变量。如果未设置,请不要采取其他措施,询问并等待用户提供。
智能体必须告知用户:
“由于您尚未配置 BrowserAct API 密钥,请访问 BrowserAct 控制台 获取您的密钥。”
🛠️ 输入参数
智能体应根据用户需求灵活配置以下参数:
-
KeyWords
- 类型:
string - 描述:用于搜索仓库的关键词。
- 示例:
browser automation,react framework,machine learning - 默认值:
browser automation
- 类型:
-
stars
- 类型:
number - 描述:仓库应具有的最低星标数。
- 示例:
100,1000 - 默认值:
100
- 类型:
-
updated
- 类型:
string - 描述:按仓库最后更新日期过滤(格式:
YYYY-MM-DD)。 - 示例:
2026-01-01,2025-06-01 - 默认值:
2026-01-01
- 类型:
-
Page_Turns
- 类型:
number - 描述:要翻页的搜索结果页面数。例如,共有 39 页且您想要前 2 页时,输入
2。 - 示例:
1,2 - 默认值:
1
- 类型:
-
date_limit_per_page
- 类型:
number - 描述:每页搜索结果列表中提取的数据项数。
- 示例:
5,10 - 默认值:
5
- 类型:
🚀 调用方法
智能体应执行以下命令来调用技能:
# 示例调用(所有参数)
python -u ./scripts/github_project_contributor_finder_api.py "browser automation" 100 "2026-01-01" 1 5
# 最小化调用(仅关键词,其余使用默认值)
python -u ./scripts/github_project_contributor_finder_api.py "react framework"
⏳ 执行监控
由于此任务涉及自动化浏览器操作,可能需要几分钟时间。脚本会持续输出带时间戳的状态日志(例如 [14:30:05] Task Status: running)。
智能体指南:
- 等待时监控终端输出。
- 只要出现新的状态日志,任务就正常运行;不要误判为卡死。
- 仅当状态长时间不变或输出停止且无最终结果时,才考虑触发重试。
📊 数据输出
成功执行后,脚本将解析并打印来自 API 响应的结构化结果。
项目字段:
repository_name:GitHub 仓库的名称。repository_url:仓库的 URL 链接。repository_owner_name:仓库的所有者/创建者。repository_description:仓库的简短描述。star_count:仓库获得的星标数。
贡献者字段:
user_name:贡献者的 GitHub 用户名。profile_url:贡献者个人资料的 URL 链接。bio:贡献者的个人简介或简短描述。repositories_summary:贡献者拥有的其他仓库的摘要。personal_website:贡献者的个人网站链接。twitter:贡献者的 Twitter 账号。
⚠️ 错误处理与重试
如果在脚本执行过程中发生错误(例如网络波动或任务失败),智能体应遵循以下逻辑:
-
检查输出内容:
- 如果输出中包含
"Invalid authorization",则表示 API 密钥无效或已过期。不要重试;引导用户重新检查并提供正确的 API 密钥。 - 如果输出中包含
"concurrent"或"too many running tasks",则表示已超出并发任务限制。不要重试;引导用户升级其套餐。 智能体必须告知用户:“当前任务无法执行,因为您的 BrowserAct 账户已达到并发任务限制。请访问 BrowserAct 套餐升级页面 升级您的套餐。”
- 如果输出中不包含上述错误关键词,但任务失败(例如输出以
Error:开头或返回空结果),智能体应自动重新执行脚本一次。
- 如果输出中包含
-
重试限制:
- 自动重试限制为一次。如果第二次尝试失败,则停止重试并向用户报告具体错误。
🌟 典型用例
- 技术招聘:从热门仓库收集贡献者档案和社交链接,建立候选人管道。
- 开源发现:按关键词和星标数搜索热门仓库,寻找有价值的项目。
- 开发者外联:收集活跃贡献者的个人网站和 Twitter 账号,用于开发者工具营销。
- 社区建设:识别并联系特定领域的活跃开源贡献者。
- 竞品分析:监控哪些开发者为竞品项目做出贡献。
- 合作伙伴搜寻:寻找潜在合作或赞助的仓库所有者。
- 市场调研:分析仓库指标和描述,了解技术趋势。
- 线索生成:通过查找具有相关技术栈的项目,为开发者工具生成定向线索。
- 学术研究:发现特定研究领域近期更新的仓库。
- 人才画像:基于开发者的 GitHub 贡献和个人资料,建立技能开发者数据库。