# Baidu Wenku Uploader

> SKILL.md - 百度文库上传管理自动化

- Skill: `whb786200/baidu-wenku-uploader` (Agent Skill)
- Install (CLI): `npx skillmds@latest add whb786200/baidu-wenku-uploader`
- Raw SKILL.md: https://api.skillmd.com/api/skills/whb786200/baidu-wenku-uploader/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: whb786200 (https://skillmd.com/u/whb786200)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/whb786200/baidu-wenku-uploader

---


# SKILL.md - 百度文库上传管理自动化

## 功能说明
模拟人类操作，批量管理百度文库上传文件：识别状态、删除未通过、下载修改、重新上传。

## 核心流程

### Phase 1: 登录与页面准备
```bash
# 1. 打开浏览器
npx agent-browser open https://wenku.baidu.com/user/upload

# 2. 等待登录完成，获取页面内容
npx agent-browser wait --load networkidle
npx agent-browser snapshot -i

# 3. 截图记录当前状态
npx agent-browser screenshot --full current_state.png
```

### Phase 2: 识别未通过文件（鼠标悬停查看详情）
```bash
# 鼠标悬停到文件行，查看状态和原因
npx agent-browser hover <file_row_selector>

# 等待tooltip显示
npx agent-browser wait 1000

# 获取tooltip内容（包含不通过原因）
npx agent-browser get text <tooltip_selector>

# 截图记录
npx agent-browser screenshot tooltip.png
```

### Phase 3: 鼠标点击删除（模拟人类操作）
```bash
# 方法1：直接点击删除按钮
npx agent-browser mouse move <x> <y>  # 移动到删除按钮
npx agent-browser mouse down             # 按下鼠标
npx agent-browser mouse up              # 释放鼠标

# 方法2：使用元素点击
npx agent-browser click <delete_button_selector>

# 方法3：使用坐标点击（通过截图确定位置）
npx agent-browser click <x>,<y>

# 等待确认弹窗
npx agent-browser wait 500

# 点击确认删除
npx agent-browser click <confirm_button_selector>
```

### Phase 4: 下载文档到本地
```bash
# 找到下载按钮并点击
npx agent-browser click <download_button_selector>

# 或者使用右键菜单下载
npx agent-browser click <file_row_selector> button=secondary
npx agent-browser find text 下载 click
```

### Phase 5: 分析原因并修改
根据不通过原因分类处理：
- **格式问题** → 转换为PDF/PPT
- **内容违规** → 修改敏感词
- **质量问题** → 完善文档内容
- **侵权问题** → 添加原创标识

### Phase 6: 重新上传
```bash
# 点击上传按钮
npx agent-browser click <upload_button_selector>

# 上传文件
npx agent-browser upload <file_input_selector> <file_path>

# 填写标题和描述
npx agent-browser type <title_input> "文档标题"
npx agent-browser type <desc_input> "文档描述"

# 提交上传
npx agent-browser click <submit_button>
```

## 关键选择器（需根据实际页面调整）

### 百度文库上传页面结构
```
.upload-list
  .upload-item
    .file-name          # 文件名
    .file-status        # 状态（已通过/未通过/审核中）
    .file-status.failed # 未通过状态（红色）
    .reason-text        # 不通过原因
    .btn-download       # 下载按钮
    .btn-delete         # 删除按钮
    .btn-edit           # 编辑按钮
  .pagination
    .page-next          # 下一页按钮
```

## 鼠标操作技巧
```bash
# 移动到元素中心
npx agent-browser mouse move <selector>

# 精确坐标移动（先截图确定位置）
npx agent-browser mouse move 500 300

# 双击
npx agent-browser dblclick <selector>

# 右键点击
npx agent-browser click <selector> button=secondary
```

## 页面等待策略
```bash
# 等待元素出现
npx agent-browser wait <selector>

# 等待网络空闲
npx agent-browser wait --load networkidle

# 等待固定时间
npx agent-browser wait 2000

# 等待弹窗
npx agent-browser wait .confirm-dialog
```

## 错误处理
1. **超时错误** → 增加wait时间
2. **元素不存在** → 检查页面结构，调整选择器
3. **弹窗遮挡** → 先处理弹窗
4. **需要登录** → 暂停等待用户登录

## 截图与调试
```bash
# 全页截图
npx agent-browser screenshot --full full_page.png

# 带标注的截图（用于AI分析）
npx agent-browser screenshot --annotate annotated.png

# 获取元素位置
npx agent-browser get box <selector>
```

## 自动化脚本模板
```python
# -*- coding: utf-8 -*-
"""百度文库上传管理自动化"""

def main():
    print("1. 打开上传管理页面")
    # npx agent-browser open https://wenku.baidu.com/user/upload
    
    print("2. 等待页面加载")
    # npx agent-browser wait --load networkidle
    
    print("3. 获取上传列表")
    # snapshot = npx agent-browser snapshot -i
    
    print("4. 分析未通过文件")
    # for file in failed_files:
    #     hover_and_get_reason(file)
    #     download_and_fix(file)
    #     reupload(file)
    
    print("5. 完成")

if __name__ == "__main__":
    main()
```

## 依赖项
- Node.js
- agent-browser (`npm install -g agent-browser`)
- Python 3.x（用于脚本自动化）

## 注意事项
1. 百度文库页面可能更新，需定期更新选择器
2. 删除操作不可逆，建议先截图备份
3. 上传频率限制，避免短时间内大量上传
4. 部分功能可能需要会员权限

