Skill flagged — review recommended

ClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.

Auto Login

通用网页自动登录 Skill - 集成验证码识别(支持任意 OpenAI 兼容视觉 API)。支持配置化登录流程、多网站规则、自动重试、WSL 自动检测。

Audits

Suspicious

Install

openclaw skills install auto-login

Auto Login Skill - 自动登录 v1.0.0

全自动网页登录解决方案 — 集成验证码识别、账号密码填写、登录状态检测、失败重试。

实测成功率:100% - 已在超鹰打码平台等多个真实网站验证


⚠️ 重要:安装路径说明

Clawhub 默认安装到当前工作目录的 ./skills 子目录!

✅ 正确的安装方式

# 方式 1:进入 workspace 目录安装(推荐)
cd ~/.openclaw/workspace
clawhub install auto-login

# 方式 2:使用 --workdir 参数
clawhub install auto-login --workdir ~/.openclaw/workspace

# 方式 3:设置环境变量(永久生效)
export CLAWHUB_WORKDIR=~/.openclaw/workspace
clawhub install auto-login

❌ 错误的安装方式

# 不要在 home 目录直接运行!
cd ~
clawhub install auto-login  # 会安装到 ~/skills/auto-login ❌

验证安装位置

# 正确位置
ls -la ~/.openclaw/workspace/skills/auto-login/

🎯 核心功能

功能说明
自动填写账号密码支持选择器配置,适配不同网站
验证码自动识别混合模式:本地 Tesseract OCR → 阿里云 Qwen VL 降级
登录状态检测URL 变化 + 页面内容关键词双重检测
失败自动重试最多 3 次重试,应对验证码刷新
截图记录每步可选截图,便于调试
配置化规则预定义网站规则 + 自定义选择器

🔑 必需配置

视觉模型 API(验证码识别)

本 Skill 支持通用的 PROVIDER_* 环境变量,默认使用阿里云 Qwen VL。


方案 1:阿里云 DashScope(通义千问 VL)- 默认

export PROVIDER_API_KEY="sk-your-api-key"
export PROVIDER_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"
export PROVIDER_MODEL="qwen3-vl-plus"

或使用兼容的旧变量名:

export VISION_API_KEY="sk-your-api-key"
export VISION_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"
export VISION_MODEL="qwen3-vl-plus"

获取 API Key:

  1. 访问 阿里云 DashScope 控制台
  2. 创建/登录账号
  3. 申请 API Key
  4. 选择 qwen3-vl-plus 视觉模型

方案 2:自定义提供商(兼容任意 OpenAI 格式 API)

# 使用 AppId 认证的提供商(如内部 API)
export PROVIDER_APP_ID="your-app-id"
export PROVIDER_BASE_URL="https://your-api.example.com/v1"
export PROVIDER_MODEL="your-model-name"

# 或使用 API Key 认证的提供商
export PROVIDER_API_KEY="your-api-key"
export PROVIDER_BASE_URL="https://your-api.example.com/v1"
export PROVIDER_MODEL="your-model-name"

⚠️ 重要:认证方式

  • 使用 PROVIDER_APP_ID 时:Authorization: Bearer <AppId>
  • 使用 PROVIDER_API_KEY 时:Authorization: Bearer <API Key>

方案 3:OpenAI 兼容接口

export OPENAI_API_KEY="sk-..."
export OPENAI_BASE_URL="https://api.openai.com/v1"
export OPENAI_MODEL="gpt-4o-mini"

配置文件方式(推荐)

~/.openclaw/openclaw.json 中配置:

{
  "models": {
    "providers": {
      "aliyun": {
        "apiKey": "sk-...",
        "baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
        "model": "qwen3-vl-plus"
      },
      "generic": {
        "appId": "your-app-id",
        "baseUrl": "https://your-api.example.com/v1",
        "model": "your-model-name"
      }
    }
  }
}

优先级说明

配置加载优先级(从高到低):

  1. 命令行参数 --api-key / --model / --provider
  2. 环境变量
  3. 配置文件 ~/.openclaw/openclaw.json

🚀 快速开始

方式 1:使用预定义规则(超鹰打码平台)

# 1. 创建配置文件
cat > login-config.json << 'EOF'
{
  "site": "chaojiying",
  "url": "https://www.chaojiying.com/user/login/",
  "username": "your_username",
  "password": "your_password"
}
EOF

# 2. 运行自动登录(阿里云 Qwen VL)
cd ~/.openclaw/workspace
PROVIDER_API_KEY="sk-xxx" PROVIDER_BASE_URL="..." PROVIDER_MODEL="qwen3-vl-plus" \
  node skills/auto-login/scripts/run.mjs --config-file=./login-config.json

# 或使用旧变量名(兼容)
VISION_API_KEY="sk-xxx" VISION_BASE_URL="..." VISION_MODEL="qwen3-vl-plus" \
  node skills/auto-login/scripts/run.mjs --config-file=./login-config.json

# 2. 运行自动登录(自定义提供商 - 使用 AppId)
PROVIDER_APP_ID="your-app-id" \
  PROVIDER_BASE_URL="https://your-api.example.com/v1" \
  PROVIDER_MODEL="your-model-name" \
  node skills/auto-login/scripts/run.mjs --config-file=./login-config.json

# 2. 运行自动登录(自定义提供商 - 使用 API Key)
PROVIDER_API_KEY="your-api-key" \
  PROVIDER_BASE_URL="https://your-api.example.com/v1" \
  PROVIDER_MODEL="your-model-name" \
  node skills/auto-login/scripts/run.mjs --config-file=./login-config.json

方式 2:使用自动登录框架(推荐)

# 自动登录框架提供更完整的控制
node scripts/auto-login-framework.mjs --config-file=./login-config.json --keep-open

方式 3:命令行参数

node skills/auto-login/scripts/run.mjs \
  --url="https://example.com/login" \
  --username="your_user" \
  --password="your_pass" \
  --selectors='{"username":"input[name=user]","password":"input[name=pass]","captchaInput":"input[name=captcha]"}'

方式 4:指定视觉模型提供商

# 使用阿里云
node scripts/auto-login-framework.mjs \
  --config-file=./login-config.json \
  --provider=aliyun \
  --model=qwen3-vl-plus

# 使用自定义提供商(如内部 API)
PROVIDER_APP_ID="your-app-id" \
  node scripts/auto-login-framework.mjs \
  --config-file=./login-config.json \
  --provider=generic \
  --model=your-model-name

📋 预定义网站规则

chaojiying(超鹰打码平台)

{
  "site": "chaojiying",
  "url": "https://www.chaojiying.com/user/login/",
  "selectors": {
    "username": "input[name=\"user\"]",
    "password": "input[name=\"pass\"]",
    "captchaInput": "input[name=\"imgtxt\"]",
    "submit": "input[type=\"submit\"]"
  }
}

generic(通用规则)

自动检测选择器,适用于大多数标准登录页面。


🔧 高级配置

完整配置示例

{
  "site": "chaojiying",
  "url": "https://www.chaojiying.com/user/login/",
  "username": "your_username",
  "password": "your_password",
  "config": {
    "headless": false,
    "keepOpen": true,
    "timeout": {
      "pageLoad": 30000,
      "element": 5000,
      "submit": 10000
    },
    "retry": {
      "maxAttempts": 3,
      "delay": 1000
    },
    "screenshots": {
      "enabled": true,
      "fullPage": true,
      "outputDir": "./screenshots"
    }
  }
}

配置选项说明

选项类型默认值说明
headlessbooleanfalse无头模式(不显示浏览器)
keepOpenbooleanfalse登录后保持浏览器打开
timeout.pageLoadnumber30000页面加载超时(ms)
timeout.elementnumber5000元素查找超时(ms)
retry.maxAttemptsnumber3最大重试次数
retry.delaynumber1000重试间隔(ms)
screenshots.enabledbooleanfalse启用截图记录

📊 测试结果

网站状态验证码类型说明
✅ 超鹰打码平台成功字母数字混合预定义规则
✅ captcha.com成功标准文本通用规则
✅ 国家统计局成功数字通用规则

🏗️ 技术架构

auto-login-framework.mjs  ← 主入口(完整登录流程)
    ↓ import
skills/auto-login/recognize.mjs  ← 验证码识别模块
    ↓ calls
任意 OpenAI 兼容视觉 API  ← 支持 Qwen VL、GPT-4V、Gemini 等

核心模块

文件功能
index.mjsSkill 主入口
recognize.mjs验证码识别核心(可复用模块)
scripts/run.mjsCLI 运行脚本
scripts/auto-login-framework.mjs完整登录框架

验证码识别策略

1. 全屏截图
   ↓
2. 调用视觉模型 API(用户配置的提供商)
   ↓
3. 识别验证码文字
   ↓
4. 返回识别结果

支持的视觉模型:

  • 阿里云 Qwen VL 系列
  • OpenAI GPT-4V / GPT-4o
  • Google Gemini 系列
  • 其他兼容 OpenAI 格式的视觉模型

输入框定位策略(三层降级)

  1. 高优先级 - id/name 包含 "captcha"
  2. 中优先级 - placeholder 包含 "验证码/verification code"
  3. 通用评分 - 遍历所有 input,根据尺寸、关键词、位置打分

⚠️ 安全与隐私警告

🔒 1. 截图会发送到第三方 API

  • 本技能会截取网页全屏截图并发送到用户配置的视觉模型 API
  • 不要在包含密码、银行卡、个人信息的页面使用
  • 在验证码页面使用
  • 📸 截图仅用于 API 识别,不会存储或上传到其他服务
  • 🔐 选择可信赖的 API 提供商(如阿里云、OpenAI 等)

🔑 2. 必需配置 API Key

  • 环境变量:PROVIDER_API_KEYPROVIDER_APP_IDPROVIDER_BASE_URLPROVIDER_MODEL
  • 兼容旧变量:VISION_API_KEYVISION_BASE_URLVISION_MODEL
  • 或配置文件:~/.openclaw/openclaw.json
  • 无硬编码凭证 - API Key 完全由用户控制

🔐 3. 密码安全建议

  • 不要将密码明文提交到 Git
  • 使用环境变量或加密配置文件
  • 考虑使用系统 Keychain 存储密码

🐛 常见问题

Q: 验证码识别失败?

A: 检查以下几点:

  1. API Key 或 AppId 是否正确
  2. Base URL 是否可访问
  3. 模型是否支持视觉输入(纯文本模型如 DeepSeek 不支持)
  4. 验证码是否为非文本类型(滑块、拼图、点选等)
  5. 查看错误信息确认具体原因(401 认证失败、403 区域限制、400 格式错误等)

Q: 登录后页面没有跳转?

A: 可能是登录失败,检查:

  1. 账号密码是否正确
  2. 验证码是否识别准确
  3. 查看截图确认填写状态

Q: 浏览器无法启动?

A: 确保已安装 Google Chrome:

# macOS
brew install --cask google-chrome

# Linux
sudo apt install google-chrome-stable

📝 更新日志

v1.0.0 (2026-02-26) - 首次发布

核心功能:

  • ✅ 完整网页自动登录流程(账号 + 密码 + 验证码)
  • ✅ 支持任意 OpenAI 兼容视觉 API(不绑定特定提供商)
  • ✅ 预定义网站规则(超鹰等)+ 通用自动检测
  • ✅ 自动重试机制(最多 3 次)
  • ✅ 登录状态双重检测(URL + 页面内容)
  • ✅ WSL 环境自动检测(自动切换无头/有头模式)
  • ✅ 验证码智能识别(max_tokens: 100,避免截断)

支持的视觉模型:

  • 阿里云 Qwen VL 系列(qwen3-vl-plusqwen3-vl-32b-instruct
  • OpenAI GPT-4V / GPT-4o
  • Google Gemini 系列(需要 API 支持)
  • 其他兼容 OpenAI 格式的视觉模型

配置方式:

  • 环境变量:PROVIDER_API_KEYPROVIDER_APP_IDPROVIDER_BASE_URLPROVIDER_MODEL
  • 兼容旧变量:VISION_API_KEYVISION_BASE_URLVISION_MODEL
  • 配置文件:~/.openclaw/openclaw.json

📚 相关资源


最后更新:2026-02-26