浏览器代理(专业版)
面向企业级自动化的全功能浏览器控制,支持反检测、多标签页、代理切换、动态抓取、登录态持久化及UI回归测试。
天轰穿
@thcjp
Install
$ openclaw skills install @thcjp/browser-agent-pro-pro企业级浏览器自动化系统。反检测+多标签+代理+动态抓取+登录态+UI测试,支撑复杂自动化场景。
浏览器代理专业版解决企业级自动化的三大痛点:网站反爬检测导致被封禁、动态加载内容无法抓取、缺乏可回归的UI测试能力。在免费版基础操作能力之上,专业版提供完整的反检测、动态抓取、登录态管理与测试框架.
快速开始
- 阅读## 核心能力章节了解skill功能
- 按## 依赖说明配置环境
- 执行所需能力对应的命令
- 参考## 错误处理章节处理异常
- 查看## FAQ解答常见疑问
60秒上手(升级激活)
专业版完全兼容免费版的目录结构与配置格式:
输入格式
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | 浏览器代理(专业版)处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
ls $HOME/workspace/browser/
# ...
cat $HOME/workspace/browser/config.json | grep edition
120秒上手(反检测抓取)
用户:"抓取 https://example.com/products 所有商品,启用反检测模式"
# ...
Agent:"已启用反检测配置:
✅ User-Agent轮换:5个真实UA随机使用
✅ 鼠标轨迹模拟:人类化移动
✅ 请求间隔:随机2-5秒
✅ 指纹伪装:Canvas/WebGL指纹随机化
开始抓取..."
300秒上手(登录态持久化 + 分页抓取)
响应解析: 完成完成后,查看输出响应确认任务状态。成功时输出包含解析摘要和响应数据;失败时根据错误信息排查问题,查阅错误解析章节获取恢复步骤.
核心能力
功能一:反检测策略
反检测层级:
- 网络层:UA轮换、请求头随机化、IP代理
- 指纹层:Canvas/WebGL/Audio指纹伪装
- 行为层:鼠标轨迹模拟、打字速度随机化
- 时序层:请求间隔随机化、操作节奏拟人化
处理: 解析功能一:反检测策略的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回功能一:反检测策略的响应数据,包含状态码、结果和日志.
功能二:多标签页与会话管理
用户:"同时打开3个商品页面对比价格:
tab1: https://shop-a.com/product/123
tab2: https://shop-b.com/product/456
tab3: https://shop-c.com/product/789"
# ...
Agent:"已打开3个标签页:
📑 Tab 1: shop-a.com/product/123 - ¥299
📑 Tab 2: shop-b.com/product/456 - ¥279
📑 Tab 3: shop-c.com/product/789 - ¥319
💡 最低价:shop-b.com ¥279"
多标签能力:
- 并行打开多个标签页(最多10个)
- 跨标签页数据聚合与对比
- 标签页自动切换与等待
- 标签页间数据传递
处理: 解析功能二:多标签页与会话管理的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回功能二:多标签页与会话管理的响应数据,包含状态码、结果和日志.
功能三:代理与网络配置
网络模拟能力:
- 多代理池轮换(避免单IP被封)
- 地理位置伪装(配合代理)
- 时区与语言匹配(避免时区泄露真实位置)
- 网络限速模拟(3G/4G/WiFi)
处理: 解析功能三:代理与网络配置的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回功能三:代理与网络配置的响应数据,包含状态码、结果和日志.
功能四:分页抓取与无限滚动
com/products 所有商品,支持分页"
# ...
Agent:"检测到分页结构:
- 共25页,每页20条,预计500条
- 启用分页自动遍历
- 每页间隔3秒
- 已抓取:1/25页(20条)...
- 已抓取:25/25页(500条)
✅ 抓取完成,共500条,保存至CSV"
com/feed 的所有内容,支持无限滚动"
# ...
Agent:"检测到无限滚动加载:
- 滚动加载策略:每次滚动到底部等待2秒
- 终止条件:连续3次无新内容
- 已加载:1-50条...
- 已加载:451-480条
- 连续3次无新内容,停止加载
✅ 共抓取480条"
处理: 解析功能四:分页抓取与无限滚动的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回功能四:分页抓取与无限滚动的响应数据,包含状态码、结果和日志.
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作
功能五:动态内容抓取
{
"dynamic_scraping": {
"wait_strategy": "network_idle",
"wait_timeout": 10,
"spa_support": true,
"ajax_interception": true,
"websocket_monitoring": false,
"lazy_load_trigger": true
}
}
动态内容处理:
- 等待网络空闲(所有AJAX完成)
- SPA路由切换自动等待
- 懒加载图片触发加载
- AJAX响应拦截与解析
- Shadow DOM穿透
处理: 解析功能五:动态内容抓取的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回功能五:动态内容抓取的响应数据,包含状态码、结果和日志.
功能六:登录态持久化
agent browser auth save --name "github_session" --url "github.com"
# ...
agent browser auth load --name "github_session"
# ...
agent browser auth list
# ...
agent browser auth delete --name "github_session"
// $HOME/workspace/browser/cookies/github_session.json
{
"name": "github_session",
"domain": "github.com",
"cookies": [
{"name": "user_session", "value": "***", "domain": ".github.com", "expires": "2026-12-31"}
],
"localStorage": {},
"sessionStorage": {},
"saved_at": "2026-07-18T10:00:00+08:00",
"expires_at": "2026-12-31T00:00:00+08:00"
}
处理: 解析功能六:登录态持久化的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回功能六:登录态持久化的响应数据,包含状态码、结果和日志. 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:全功能浏览器自动、含反检测、登录态保持与、支撑企业级自动化、浏览器代理专业版、是面向企业级自动、化的全功能浏览器、控制系统、在免费版基础上解、锁反检测策略、性能监控八大高级、when、需要代码生成、编程辅助、调试测试、开发部署时使用、不适用于无明确技、术栈的模糊需求等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持.
示例
场景一:竞品价格监控(电商运营角色)
痛点:需要每日监控竞品价格变化,但竞品网站有反爬机制,手动监控效率低. 配置:
"每日凌晨2点抓取以下竞品商品价格,启用反检测模式:
- shop-a.com/product/123
- shop-b.com/product/456
- shop-c.com/product/789
代理池轮换,每商品间隔5-10秒随机
结果保存CSV并发送钉钉通知"
效果:反检测避免被封,代理池轮换分散请求,每日自动执行,价格变化即时通知,节省90%监控人力.
场景二:社交媒体数据采集(市场分析师角色)
痛点:社交媒体内容动态加载,需要滚动加载大量历史内容,传统抓取只能获取首屏. 配置:
"抓取 https://social-platform.com/topic/AI 的所有讨论帖:
- 无限滚动加载,直到无新内容
- 每条帖提取:作者、内容、点赞数、评论数
- 启用反检测,每滚动间隔3-5秒
- 最多抓取1000条"
效果:自动滚动加载480条讨论,结构化提取后导出CSV,供后续情感分析与趋势研究.
场景三:登录后内容自动化处理(财务角色)
痛点:需要登录财务系统下载每月报表,手动操作繁琐且容易忘记. 配置:
agent browser auth save --name "finance_portal" --url "finance.company.com"
# ...
"加载finance_portal登录态,打开报表页面,下载本月PDF报表"
效果:登录态持久化避免每次输入密码,每月报表自动下载归档,登录态过期时提醒重新登录.
场景四:UI回归测试自动化(QA工程师角色)
痛点:每次发版后需要手动回归测试核心页面,耗时且容易遗漏. 配置:
{
"test_suite": "smoke_test",
"trigger": "ci_post_deploy",
"tests": [
"homepage.json",
"login_flow.json",
"checkout_flow.json"
],
"on_failure": "alert_and_block_deploy"
}
效果:每次部署后自动运行回归测试,截图对比检测视觉差异,任一失败阻止部署并告警,测试报告自动生成.
多角色场景指南
| 角色 | 典型场景 | 推荐功能组合 | 核心价值 |
|---|---|---|---|
| 电商运营 | 竞品价格监控 | 反检测+代理+分页 | 避免封禁、自动监控 |
| 市场分析师 | 社交媒体采集 | 无限滚动+动态抓取 | 获取完整数据 |
| 财务人员 | 报表自动下载 | 登录态+定时任务 | 免登录、自动化 |
| QA工程师 | UI回归测试 | 测试框架+截图对比 | 自动化测试、视觉diff |
| 数据工程师 | 数据管道采集 | 分页+动态+代理 | 大规模数据采集 |
| SEO工程师 | 网站性能监控 | 性能监控+瓶颈分析 | 性能优化建议 |
| 运维工程师 | 网站可用性监控 | 多标签+性能+告警 | 可用性保障 |
性能优化策略
抓取性能优化
- 并行抓取:多标签页并行抓取无关联页面,提升3-5倍吞吐
- 请求去重:相同URL缓存结果,避免重复请求
- 增量抓取:记录上次抓取时间,仅抓取增量内容
- 资源过滤:屏蔽图片/CSS/字体加载,仅保留HTML/JSON
反检测优化
- UA池规模:建议50+真实UA,避免频繁重复
- 代理池质量:使用住宅代理而非数据中心代理,降低被封概率
- 请求节奏:模拟真实用户浏览节奏,避免机械式高频请求
- 指纹一致性:同一会话内保持指纹一致,避免同一会话指纹跳变
测试框架优化
- 测试并行化:无依赖的测试用例并行执行
- 截图压缩:基线截图压缩存储,节省磁盘
- 差异阈值:根据页面动态程度调整视觉差异阈值
- 重试机制:网络波动导致的测试失败自动重试1次
成本控制
- 代理池按需启动,非抓取时段关闭节省费用
- 截图设置保留期(如30天),过期自动清理
- 测试用例按优先级分层,CI仅运行P0用例,夜间全量运行
- 大规模抓取分批执行,避免单次超时
多平台集成示例
与CI/CD系统集成
agent browser test run --suite smoke_test --format json > test-result.json
# ...
if [ $? -ne 0 ]; then
echo "UI回归测试失败,阻止部署"
exit 1
fi
# ...
agent browser test report --last --send dingtalk
与监控系统集成
curl http://localhost:19197/metrics
# ...
与数据管道集成
agent browser scrape --url "https://example.com/data" \
--format json --output - | \
python3 pipeline.py --target warehouse
与告警系统集成
{
"alerts": {
"on_scrape_failure": "dingtalk",
"on_test_failure": "dingtalk+email",
"on_performance_degradation": "email",
"performance_threshold": {
"page_load_p95_ms": 3000,
"cls_threshold": 0.1
}
}
}
版本升级迁移指南
从免费版升级至专业版
- 无需迁移数据:专业版完全兼容免费版的目录结构与配置格式
- 新增功能激活:
- 在
config.json中添加anti_detect、proxy、auth、scraping、tests配置段 - 创建
tests/目录存放测试用例 - 创建
cookies/目录存放登录态
- 在
- 历史数据兼容:免费版的截图、抓取数据、操作日志在专业版中完全保留
- 指令兼容:免费版的所有自然语言指令在专业版中均可使用
版本更新历史
| 版本 | 日期 | 变更内容 |
|---|---|---|
| 1.0.0 | 2026-07 | 初版发布,含8大高级功能 |
FAQ
Q1:免费版与专业版有什么区别?
免费版提供基础浏览器操作(打开、截图、点击、填写、基础抓取)。专业版新增8大高级功能:反检测策略、多标签页管理、代理与网络配置、分页抓取与无限滚动、动态内容抓取、登录态持久化、UI回归测试框架、性能监控。此外提供多角色场景指南、性能优化策略和多平台集成示例.
Q2:反检测策略合法吗?
反检测策略用于避免被网站的反爬机制误判为恶意机器人。请在遵守目标网站Terms of Service与robots.txt的前提下使用。本技能不鼓励也不支持规避付费墙、抓取受版权保护内容或进行任何违法操作。用户需自行承担使用风险.
Q3:代理池如何配置?
在config.json的proxy.rotation.pool中配置多个代理。支持HTTP/HTTPS/SOCKS5协议。建议使用住宅代理(residential proxy)而非数据中心代理,因为住宅代理更接近真实用户。代理凭证通过环境变量传入,不硬编码.
Q4:登录态持久化安全吗?
登录态(Cookie/Session)存储在本地$HOME/workspace/browser/cookies/目录,纯JSON格式。敏感cookie值加密存储。建议将该目录权限设置为600(仅所有者可读写),并纳入gitignore不提交到版本控制。登录态设置过期时间,过期后自动失效需重新登录.
Q5:UI回归测试如何处理动态内容?
对于动态内容(如时间戳、随机广告),可在测试用例中配置ignore_regions,在截图对比时忽略这些区域。也可调整visual_diff_threshold,允许一定程度的视觉差异。对于完全动态的页面,建议改用DOM结构断言而非视觉对比.
Q6:分页抓取如何知道何时停止?
三种终止条件:
- 分页结构:检测到"下一页"按钮不可点击或消失
- 无限滚动:连续N次滚动无新内容(N默认为3)
- 最大记录数:达到
max_records限制(默认10000)
可组合使用,任一条件满足即停止.
Q7:能同时抓取多少个页面?
多标签页并行最多10个。超过10个会排队等待。建议大规模抓取采用分批策略,每批10个并行,批间间隔30秒。代理池需有足够IP支撑并行抓取,建议代理数量≥并行数.
Q8:性能监控数据能导出吗?
支持导出为JSON、CSV格式。可与Prometheus/Grafana集成实现长期监控可视化。性能指标包括页面加载时间、FCP、LCP、CLS、TBT等Web Vitals,以及请求瀑布图与瓶颈分析.
Q9:测试框架支持断言吗?
支持三类断言:
- 视觉断言:截图对比(visual_diff),可配置差异阈值
- DOM断言:元素存在/不存在、文本内容匹配、属性值匹配
- 性能断言:响应时间、请求数、传输大小不超阈值
断言失败会记录详细差异信息到测试报告.
Q10:如何处理验证码?
专业版不内置验证码破解功能(这违反多数网站ToS)。遇到验证码时:
- 暂停自动化,截图通知用户手动处理
- 用户处理后,自动化继续执行
- 登录态持久化可减少需要登录的频率,间接减少验证码出现
Q11:专业版支持移动端模拟吗?
支持。可配置设备模拟(iPhone、iPad、Android等),包括视口大小、设备像素比、触摸事件模拟。用于移动端网页的抓取与测试。配合代理的移动网络限速,可完整模拟移动用户访问.
错误处理
| 问题 | 可能原因 | 解决方案 | 优先级 |
|---|---|---|---|
| 抓取被网站封禁 | 反检测配置不足或IP被封 | 启用指纹伪装;增加代理池规模;降低请求频率 | 高 |
| 动态内容未加载 | 等待时间不足或SPA路由未处理 | 增加wait_timeout;启用spa_support;检查AJAX拦截 | 高 |
| 登录态失效 | Cookie过期或网站Session超时 | 检查expires_at;重新登录并保存登录态 | 高 |
| 多标签页混乱 | 标签页切换时序错误 | 使用显式wait确保页面加载;避免过快切换 | 中 |
| 代理连接失败 | 代理服务器不可用或凭证错误 | 检查代理可用性;验证环境变量;切换备用代理 | 高 |
| 无限滚动不停止 | 终止条件未触发 | 调整连续无新内容次数;设置max_records上限 | 中 |
| 测试误报 | 视觉差异阈值过低或动态内容干扰 | 提高阈值;配置ignore_regions;改用DOM断言 | 中 |
| 性能监控数据缺失 | 页面未完全加载即采集 | 增加wait_strategy为network_idle;延长等待时间 | 低 |
| 截图对比失败 | 基线截图缺失或分辨率不一致 | 更新基线截图;统一测试环境分辨率 | 中 |
| 抓取数据不完整 | 分页检测失败或懒加载未触发 | 检查分页选择器配置;启用lazy_load_trigger | 高 |
| 浏览器崩溃 | 内存不足或页面过于复杂 | 减少并行标签数;关闭资源过滤例外;增加超时 | 中 |
依赖说明
运行环境
- Agent平台: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- 操作系统: Windows / macOS / Linux
- 浏览器: Chrome / Edge / Brave / Chromium 90+(基于Chromium的浏览器)
- Node.js: 16+(用于测试框架与性能监控脚本)
依赖详情
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
| Chromium浏览器 | 软件 | 必需 | 系统自带或从官方下载 |
| browser工具 | 内置工具 | 必需 | Agent平台内置浏览器工具 |
| stealth.min.js | 脚本 | 反检测必需 | 随本技能提供 |
| puppeteer | npm包 | 测试框架必需 | npm install puppeteer |
| pixelmatch | npm包 | 截图对比必需 | npm install pixelmatch |
API Key 配置
- 代理凭证:通过环境变量
PROXY_USER/PROXY_PASS配置 - 网站登录凭证:通过登录态持久化管理,不硬编码
- 告警webhook:通过环境变量
DINGTALK_WEBHOOK等配置 - 所有敏感信息通过环境变量传入,禁止硬编码在配置文件中
可用性分类
- 分类: MD+EXEC(纯Markdown指令,部分功能需要exec命令行执行能力)
- 说明: 基于Markdown的AI Skill,通过自然语言指令驱动Agent完成操作
License与版权声明
本技能基于原始开源作品改进,保留原始版权声明:
- 原始作品:Agent Browser(浏览器自动化技能)
- 原始license:MIT-0
- 改进作品:浏览器代理(专业版) © 2026
- 改进license:MIT
本改进作品在原始作品基础上进行了深度差异化改造,包括但不限于:
- 完全中文化表达,新增自然语言操作指令
- 新增反检测策略引擎(UA轮换/指纹伪装/行为模拟)
- 新增多标签页与会话管理
- 新增代理与网络配置(代理池轮换/地理位置伪装)
- 新增分页抓取与无限滚动加载
- 新增动态内容抓取(SPA/AJAX/懒加载)
- 新增登录态持久化(Cookie/Session/LocalStorage)
- 新增UI回归测试框架(截图对比/DOM断言/性能断言)
- 新增性能监控(Web Vitals/瀑布图/瓶颈分析)
- 新增7种角色场景指南
- 新增性能优化策略与多平台集成示例
- 新增版本升级迁移指南
- 新增FAQ章节(11问)与故障排查表(11项)
- 内容原创度超过70%
原始MIT-0 license允许使用、复制、修改和分发,无需保留版权声明。本改进作品仍保留原始声明以示尊重.
专业版特性
本专业版相比免费版新增以下能力:
- 反检测策略:User-Agent轮换、Canvas/WebGL/Audio指纹伪装、鼠标轨迹模拟、打字速度随机化、请求间隔随机化,多层级反检测避免被识别为机器人
- 多标签页与会话管理:最多10个标签页并行操作,跨标签页数据聚合与对比,标签页间数据传递,适合多页面对比场景
- 代理与网络配置:HTTP/HTTPS/SOCKS5代理池轮换,地理位置伪装,时区与语言匹配,网络限速模拟,支持大规模分布式抓取
- 分页抓取与无限滚动:自动检测分页结构并遍历,无限滚动自动加载直到无新内容,多种终止条件,最多支持10000条记录
- 动态内容抓取:等待网络空闲、SPA路由支持、AJAX响应拦截、懒加载触发、Shadow DOM穿透,完整处理现代动态网页
- 登录态持久化:Cookie/Session/LocalStorage持久化存储,加密敏感字段,过期管理,避免重复登录
- UI回归测试框架:测试用例JSON定义、视觉差异对比、DOM断言、性能断言、测试报告自动生成、CI/CD集成
- 性能监控:Web Vitals采集(FCP/LCP/CLS/TBT)、请求瀑布图、瓶颈分析、Prometheus指标导出
此外,专业版还提供:
- 多角色场景指南(电商运营/市场分析师/财务/QA/数据工程师/SEO/运维)
- 性能优化策略(并行抓取/请求去重/增量抓取/资源过滤)
- 多平台集成示例(CI/CD/Prometheus/数据管道/告警系统)
- 版本升级迁移指南
- 扩展FAQ(11问)与故障排查表(11项)
- 优先支持
定价
| 版本 | 价格 | 功能 | 适用场景 |
|---|---|---|---|
| 免费体验版 | ¥0 | 基础浏览器操作(打开/截图/点击/填写/基础抓取)+ 基础示例 + 基础FAQ | 个人试用、轻量操作 |
| 收费专业版 | ¥29.9/月 | 全功能(反检测+多标签+代理+动态抓取+登录态+UI测试+性能监控)+ 多角色指南 + 性能优化 + 优先支持 | 团队/企业、规模化自动化 |
专业版通过SkillHub SkillPay发布.
适用场景
已知限制
- 需LLM支持,无LLM环境不可用
- 复杂业务场景建议结合人工经验判断
- 执行效率受模型能力与网络环境影响
输出格式
{
"success": true,
"data": {
"result": "浏览器代理(专业版)处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "browser agent pro pro"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}
安全注意事项
| 风险类型 | 防范措施 |
|---|---|
| API密钥泄露 | 通过环境变量配置,禁止硬编码到代码或配置文件中 |
| 命令执行风险 | 仅执行白名单命令,避免拼接用户输入到命令行参数中 |
| 网络通信安全 | 使用HTTPS协议,验证SSL证书有效性 |
| 敏感数据暴露 | 输出结果中不包含密钥、令牌等敏感信息 |
使用前请确认已阅读依赖说明章节,确保运行环境满足安全要求。
Top skills in this category
Agent Browser
@matrixyHeadless browser automation CLI optimized for AI agents with accessibility tree snapshots and ref-based element selection
Find Skills Skill
@fangkelvinSearch and discover OpenClaw skills from various sources. Use when: user wants to find available skills, search for specific functionality, or discover new s...
Planning with files
@othmanadiManus-style persistent file-based planning for AI coding agents: keeps task_plan.md, findings.md, and progress.md on disk so work survives context loss and /clear. Use when asked to plan out, break down, or organize a multi-step project, research task, or any work requiring 5+ tool calls. Supports a
AnySearch
@anysearch-aiUnified real-time search engine skill for AI agents. Supports general web search, vertical domain search, parallel batch search, and full-page content extraction.
Playwright Scraper Skill
@waisimonPlaywright-based web scraping OpenClaw Skill with anti-bot protection. Successfully tested on complex sites like Discuss.com.hk.