OpenClaw视觉操作实战:不写接口,让AI直接点按钮、操作软件

OpenClaw视觉操作实战:不写接口,让AI直接点按钮、操作软件

文章目录

目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.ZEEKLOG.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。

前言

你有没有遇到过这种情况:老板让你把Excel里的1000条客户信息,一条条复制到某个网页后台里。没有接口,没有导入功能,只有个破网页表单。你坐在那儿像个机器人一样,复制、粘贴、点提交,再复制、再粘贴、手指都快得腱鞘炎了。

或者你想自动抓取某个网站的数据,但那个网站反爬虫做得贼溜,API接口层层加密,你写爬虫写到头发掉光,最后发现人家改版了,你的代码全废。

传统自动化工具比如Selenium、Playwright,确实能解决这些问题。但说实话,写选择器(Selector)就像是在玩“大家来找茬”——你得精确找到那个按钮的XPath或CSS类名,网页一改版,全得重来。这就好比你教一个盲人找开关,必须精确到“门框右边第三块砖上方15厘米处”,稍微装修一下,他就找不着北了。

今天聊的OpenClaw,走了一条完全不同的路子:它让AI像人一样“看”屏幕,用眼睛找按钮,而不是背坐标。


一、OpenClaw是啥?你的数字长工

OpenClaw这玩意儿,2025年底刚冒出来那会儿叫Clawdbot,后来改名叫Moltbot,最后定名OpenClaw。短短三个月,GitHub上星星数冲破21万,比Docker、Kubernetes当年火得还快。

简单说,它是个住在你自己电脑里的AI管家。不同于ChatGPT那种“你问一句我答一句”的聊天机器人,OpenClaw能直接动手干活——操作浏览器、读写文件、执行命令、控制各种软件。最狠的是,它支持“视觉操作”模式,不需要你提供API文档,也不需要写复杂的选择器,它直接看着屏幕操作,跟人类一样。

打个比方,传统RPA(机器人流程自动化)工具像是一个严格按照说明书组装家具的工人,说明书上写“把螺丝A拧进孔B”,万一孔B的位置变了,他就傻眼了。OpenClaw则像是一个真的人,他看着图纸,发现孔位变了,照样能找到该拧螺丝的地方。


二、视觉操作的核心:Snapshot快照系统

OpenClaw的视觉操作靠的是一套叫Snapshot快照系统。这玩意儿的工作原理特别有意思:

当你让OpenClaw操作网页时,它不是去解析HTML代码找id或class,而是直接对当前页面进行“视觉扫描”,把所有可交互的元素——按钮、输入框、链接——都编上号。比如发现页面有20个可点击的元素,它就会给它们标上[1][2][3]

然后AI大模型(比如Claude或GPT)看着这个带编号的截图,理解页面结构,决定点哪个编号。比如它发现“提交”按钮旁边标着[15],就会下发指令:“点击元素15”。

这种方式有几个巨大的好处:

1. 告别元素定位地狱

以前用Selenium,你得写这种代码:

# 传统方式:找元素找到怀疑人生 submit_button = driver.find_element(By.CSS_SELECTOR,"div.container > button.btn-primary:nth-child(3)")

稍微改个class名就报错。现在用OpenClaw,AI直接看,管你class叫btn还是button-v2-new,只要按钮上写着“提交”,它就能认出来。

2. 自适应界面变化

软件更新了,按钮从左边挪到右边?传统脚本直接崩。OpenClaw的AI会重新截图,重新识别,照样能找到按钮。

3. 跨应用操作

不仅限于浏览器,OpenClaw还能操作桌面应用。原理类似——通过屏幕截图+OCR识别,找到“文件”菜单、“保存”按钮,然后模拟鼠标点击。


三、实战:手把手教你让AI自动填表

光说不练假把式。下面来个完整的实战:让OpenClaw自动帮你填写一个网页表单。假设我们要每天自动登录某个后台,下载昨天的销售数据。

步骤1:安装与环境准备

OpenClaw是开源的,基于Node.js。首先你得有Node.js环境,然后用npm安装:

# 克隆仓库git clone https://github.com/openclaw/openclaw.git cd openclaw # 安装依赖npminstall# 安装浏览器自动化依赖(Playwright) npx playwright install chromium 

安装完成后,配置你的AI模型API Key。OpenClaw支持OpenAI、Anthropic的API,也支持本地模型(比如Ollama跑的Llama)。

步骤2:启动视觉模式

OpenClaw提供了一个浏览器控制模块。我们要启动一个特殊的Chromium实例,这个浏览器是独立的,跟你平时上网的浏览器完全隔离,保证安全:

# 启动OpenClaw Gateway openclaw gateway --browser

这会启动一个本地HTTP服务,通常是http://localhost:8080,同时打开一个干净的Chromium浏览器窗口。

步骤3:编写自动化脚本

接下来写个简单的自动化流程。OpenClaw的命令行工具支持直接发送指令:

# 让浏览器导航到目标网站 openclaw browser navigate --url"https://example-admin.com/login"# 等待页面加载完成,获取快照 openclaw browser snapshot --output login_page.json 

这时候,OpenClaw会返回一个JSON,里面包含当前页面所有可交互元素的编号和描述。比如:

{"elements":[{"id":1,"type":"input","label":"用户名"},{"id":2,"type":"input","label":"密码"},{"id":3,"type":"button","text":"登录"}]}

然后你告诉AI要干嘛。OpenClaw内置了AI理解层,你可以用自然语言:

# 让AI理解页面并执行登录(视觉模式) openclaw browser act --instruction"在用户名框输入'admin',密码框输入'123456',然后点击登录按钮" --use-vision 

背后的流程是:OpenClaw截图→送给AI模型→AI返回具体操作(如在元素1输入文字,点击元素3)→OpenClaw执行。

步骤4:进阶:自动下载报表

登录后,假设我们要点进“报表中心”,下载昨天的Excel。继续:

# AI会自动识别"报表中心"链接并点击 openclaw browser act --instruction"找到并点击'报表中心'或'Reports'链接" --use-vision # 等待页面加载sleep2# 选择日期(假设有个日期选择器) openclaw browser act --instruction"在起始日期选择昨天的日期,格式2026-03-03" --use-vision # 点击下载按钮 openclaw browser act --instruction"点击下载Excel或Export按钮" --use-vision # 等待下载完成,移动文件到指定目录 openclaw exec--command"mv ~/Downloads/yesterday_report.xlsx ~/data/daily/"

看到没?全程没写一行CSS选择器,全靠AI“看”页面自己找按钮。这就像你雇了个实习生,你跟他说“去把那个红色的下载按钮点了”,而不是给他写一份《按钮定位坐标说明书》。


四、不止浏览器:桌面软件也能点

OpenClaw的视觉能力不仅限于网页。通过集成计算机视觉和OCR,它还能操作桌面应用。

比如你有个老旧的ERP客户端,没有API,只有个Windows界面。传统自动化得靠PyAutoGUI硬编码坐标,屏幕分辨率一变就完蛋。OpenClaw的做法是:

  1. 截取屏幕快照
  2. OCR识别文字和按钮位置
  3. AI理解“文件”菜单在哪,“导出”按钮在哪
  4. 模拟鼠标点击和键盘输入

配置方式类似,只是指令变成:

# 截图并识别桌面应用 openclaw desktop snapshot --app"ERP Client"# 执行操作 openclaw desktop act --instruction"点击菜单栏的'文件',然后选择'导出数据'"

这种方式甚至能操作远程桌面、虚拟机里的软件,只要能看到画面,AI就能操作。


五、定时任务:让AI自己起床干活

最爽的是,OpenClaw支持Heartbeat(心跳)机制。你可以设置定时任务,让AI在特定时间自动执行操作,完全不需要你盯着。

编辑config/heartbeat.yml

tasks:-name:"每日数据抓取"schedule:"0 9 * * *"# 每天上午9点actions:-type: browser instruction:"登录后台,下载昨日销售报表"-type: command instruction:"分析报表数据,生成摘要"-type: notify instruction:"把摘要发到我的Telegram"

这样,每天早上9点,你的电脑就像有个隐形的员工,自动开机(如果你设置了唤醒),打开浏览器,登录网站,下载文件,分析数据,最后给你发条消息汇报:“老板,昨天的销售额是5万,比前天涨了10%。”


六、数据安全:你的隐私留在本地

很多人担心:让AI看我屏幕,数据会不会泄露?

OpenClaw设计之初就强调本地优先(Local-First)。所有操作都在你自己的机器上完成,截图不会上传到云端,除非你用了第三方的AI API(比如调用Claude分析图片)。但即使你调用了API,你也可以选择本地模型,比如用Ollama跑个Llama 3.2 Vision,完全离线运行。

另外,OpenClaw的浏览器是独立的Chromium实例,跟你平时用的Chrome完全隔离。它看不到你的收藏夹、密码、Cookie。你可以在隔离环境里登录工作账号,而你的个人浏览记录完全不受影响。


七、避坑指南:新手常踩的雷

虽然OpenClaw很强大,但新手用视觉操作时也容易踩坑:

1. 动态加载的坑

有些网页是懒加载的,一开始没那么多元素,滚动才出现。这时候直接截图,AI可能找不到目标。解决方法是先让AI执行滚动:

openclaw browser act --instruction"向下滚动直到看到'加载更多'按钮"

2. 弹窗处理

遇到系统弹窗(比如下载确认框),浏览器层面的Snapshot可能捕捉不到。这时候需要用到桌面视觉模式,而不是浏览器模式。

3. API额度控制

视觉操作需要把截图发给AI模型分析,一张图可能几百KB,频繁操作会很快消耗API额度。建议本地部署视觉模型,或者控制操作频率。

4. 元素编号会变

每次页面刷新,元素的编号[12]可能会变。别硬编码编号,要让AI每次都重新看页面找元素。


八、总结:从“码农”到“监工”

OpenClaw的视觉操作模式,本质上改变了我们和软件交互的方式。以前,你要让电脑干活,得先学会它的语言——HTML、CSS、XPath、API文档。现在,你可以用人类的语言指挥AI,让AI去学软件的语言,帮你点按钮、填表单、抓数据。

这就像工业革命,以前你要自己纺纱织布,后来有了机器,你只需要操作机器。现在更进一步,你连机器都不用自己操作,告诉AI“去织块布”,它就自己去踩缝纫机了。

当然,AI现在还不够完美,偶尔会认错按钮,或者遇到复杂的验证码搞不定。但相比以前写几百行选择器代码,现在的工作量已经减少了90%。剩下的10%,你坐在旁边喝咖啡,看着AI干活,偶尔纠正一下它的错误,从“码农”升级成了“监工”。

如果你经常遇到那种“没有接口,只能手动点”的重复性工作,不妨试试OpenClaw。反正代码是开源的,搭个环境试试不要钱。说不定试完之后,你会发现:原来那些枯燥的重复劳动,真的可以交给一个不知疲倦的数字长工来完成。

目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.ZEEKLOG.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。

在这里插入图片描述

Read more

一步到位!VSCode Copilot 终极魔改:智谱 GLM-4.6 接入 + 任意大模型适配

VSCode Copilot 接入 GLM-4.6 方法 安装 vscode-zhipuai 插件后,在 VSCode 设置中添加以下配置: { "zhipuai.apiKey": "你的API_KEY", "zhipuai.model": "GLM-4" } 通过 Ctrl+Shift+P 调出命令面板,执行 ZhipuAI: Toggle Chat 即可激活对话窗口。该插件支持代码补全、对话和文档生成功能。 任意大模型适配方案 修改 VSCode 的 settings.json 实现通用 API 对接: { "ai.

By Ne0inhk
从语法纠错到项目重构:Python+Copilot 的全流程开发效率提升指南

从语法纠错到项目重构:Python+Copilot 的全流程开发效率提升指南

文章目录 * 从语法纠错到项目重构:Python+Copilot 的全流程开发效率提升指南 💻✨ * 一、语法纠错:Copilot 如何成为你的“实时校对员” ✅ * 示例 1:自动修复缩进错误 * 示例 2:括号/引号自动闭合与修复 * 示例 3:类型注解缺失的智能补充 * 实战技巧:结合 Linter 使用 Copilot * 二、代码生成:从单行补全到完整函数实现 🧠⚡ * 示例 4:用注释驱动函数生成 * 示例 5:生成单元测试 * 示例 6:异步 HTTP 请求生成 * 三、调试辅助:Copilot 如何帮你“读懂”错误信息 🐞🔍 * 场景:遇到 `KeyError` 怎么办? * 场景:

By Ne0inhk

Copilot代理与网络配置全攻略(突破访问限制的终极方法)

第一章:Copilot代理与网络配置全攻略(突破访问限制的终极方法) 在使用 GitHub Copilot 的过程中,开发者常因网络策略或区域限制无法正常激活服务。通过合理配置代理与网络环境,可有效绕过此类问题,确保代码补全功能稳定运行。 配置本地代理服务器 为确保 Copilot 能够连接至远程 API,建议在本地部署 HTTP 代理服务。以下是一个基于 Node.js 的简易代理示例: // proxy-server.js const http = require('http'); const net = require('net'); // 创建 HTTP 代理服务器 const server = http.createServer((req, res) => { // 允许跨域请求 res.setHeader(

By Ne0inhk
Llama 3-8B-Instruct 在昇腾 NPU 上的 SGLang 性能实测

Llama 3-8B-Instruct 在昇腾 NPU 上的 SGLang 性能实测

1.引言 随着大模型在各类智能应用中的广泛应用,高效的推理硬件成为关键瓶颈。昇腾 NPU(Ascend Neural Processing Unit)凭借其高算力、低能耗以及对 SGLang 的深度优化,能够显著提升大模型推理性能。本文以 Llama 3-8B-Instruct 为例,通过在昇腾 NPU 上的实测,展示其在吞吐量、延迟和资源利用方面的优势,并探索可行的优化策略,为开发者在今后的开发中提供可参考的案例。 在本篇文章中我们会使用到Gitcode的Notebook来进行实战,GitCode Notebook 提供了开箱即用的云端开发环境,支持 Python、SGLang 及昇腾 NPU 相关依赖,无需本地复杂环境配置即可直接运行代码和进行实验。对于没有硬件平台的小伙伴来说是非常便利的。 GitCode Notebook使用链接:https://gitcode.com/user/m0_49476241/notebook。 2.实验环境与准备 2.

By Ne0inhk