← 返回提示词库
通用 难度:入门

GitHub星标项目爬虫工具

GitHub Stars Fetcher with Agent Browser

使用Agent Browser技能登录GitHub并获取当前用户的星标项目列表,按项目数量排序展示。

适用平台: ChatGPTClaudeGemini
# 使用 Agent Browser 获取 GitHub 星标项目

## 目标
使用 Agent Browser 技能登录 GitHub,并检索当前登录用户的星标项目,按星标数量排序。

## 执行步骤(按顺序)

1. **启动浏览器并打开 GitHub 主页**
   ```bash
   agent-browser --headed --profile "%HOMEPATH%\.agent-browser\chrome-win64\chrome-profiles\github" open https://github.com && agent-browser wait --load networkidle
   ```

2. **获取当前登录用户信息**
   ```bash
   agent-browser snapshot -i
   # 在右上角找到用户头像或用户名链接以确认登录状态
   # 从页面中提取当前登录用户的用户名
   ```

3. **导航到当前用户的星标(Stars)选项卡**
   ```bash
   # 构造 URL: https://github.com/{username}?tab=stars
   agent-browser open https://github.com/{username}?tab=stars && agent-browser wait --load networkidle
   ```

4. **按星标数量排序(最多星标优先)**
   ```bash
   agent-browser snapshot -i  # 首先获取最新快照以找到排序按钮
   agent-browser click @e_sort_button  # 点击排序按钮
   agent-browser wait --load networkidle
   # 从下拉选项中选择“Most stars”(最多星标)
   ```

5. **检索并记录项目信息**
   ```bash
   agent-browser snapshot -i
   # 提取项目名称、描述、星标数和 Fork 数信息
   ```

## 关键注意事项

### 1. 守护进程问题
- 如果看到“daemon already running”,表示浏览器已在运行
- **重要提示:** 当守护进程已在运行时,`--headed` 和 `--profile` 参数将被忽略,浏览器将继续以其当前运行模式工作
- 您可以直接执行后续命令,无需重新打开
- 要以有头模式重新启动,必须首先执行:`agent-browser close`,然后使用 `--headed` 参数重新打开

### 2. 引用动态性
- 元素引用(@e1, @e2 等)在每次页面修改后都会改变
- 每次交互前都必须执行 `snapshot -i` 以获取最新引用
- 绝不能假定引用是固定的

### 3. 命令执行模式
- 使用 `&&` 链接多个命令,避免重复启动进程
- 每个命令后等待页面加载:`wait --load networkidle`

### 4. 登录状态
- 使用 `--profile` 参数指定配置文件目录,以保持登录状态
- 如果登录过期,手动登录一次以保存状态

### 5. Windows 环境变量扩展
- **重要提示:** 在 Windows 上,`%HOMEPATH%` 等环境变量在使用前必须扩展为实际路径
- **错误示例:** `agent-browser --profile "%HOMEPATH%\.agent-browser\chrome-win64\chrome-profiles\github"`
- **正确示例:** 首先执行 `echo $HOME` 获取实际路径,然后使用扩展后的路径
  ```bash
  # 获取 HOME 路径 (例如, /c/Users/xxx)
  echo $HOME
  # 使用扩展后的绝对路径
  agent-browser --profile "/c/Users/xxx/.agent-browser/chrome-win64/chrome-profiles/github" --headed open https://github.com
  ```
- 不扩展环境变量会导致连接错误(例如,`os error 10060`)

### 6. 排序配置
- 点击“Sort by: Recently starred”按钮(通常引用为 e44)
- 选择“Most stars”选项
- 再次获取页面内容

## 常见问题排查

| 问题 | 解决方案 |
|-------|----------|
| daemon already running | 直接执行后续命令,或先关闭再重新打开 |
| Invalid element reference | 执行 snapshot -i 获取最新引用 |
| Page not fully loaded | 添加 wait --load networkidle |
| Need to re-login | 使用 --headed 模式手动登录一次并保存状态 |
| Sorting not applied | 确认点击了正确的排序选项 |

## 结果输出格式
- 项目名称和链接
- 星标数量(按降序排列)
- Fork 数量
- 项目描述(如果可用)