在做网页自动化的朋友,大概都有过这样的时刻:
- • 页面 DOM 一更新,脚本全部报废
- • XPath 找不到元素,调试调到怀疑人生
- • 自动化流程每隔一段时间就要打补丁修一轮
- • ...
这种痛苦,大家懂,我也懂。
不过最近我发现一款完全不走传统 XPath/DOM 路子的开源自动化工具 — Skyvern 。在Github直接斩获18K+星星。
它用的不是传统网页结构解析,而是视觉 + 大语言模型来理解网页。换句话说,它不是解析网页,而是看网页。
不仅能看懂网页,还能自己执行任务、串联工作流、完全本地部署。
项目简介
Skyvern 是一款基于视觉大模型(VLM)驱动的网页自动化工具。
可以自动截图网页 → 让视觉模型理解布局;识别按钮、输入框、表格、交互区域;自动生成操作步骤;模拟人类点击、输入、拖拽、登录等。
即使网站布局调整、按钮换位置,它依然能完成任务。因为它不依赖编码元素,而是依赖“视觉理解”。
主要功能
- • 视觉自适应 :页面改版可自动识别新布局,无需改代码。
- • 人类级操作 :填写表单、处理验证码、滑动验证、下载文件,模拟鼠标/键盘。
- • 工作流编排 :可视化构建器,拖拽任务节点,条件分支/循环/并行。
- • 多模型支持 :Claude/GPT-4o/OpenAI/o1,API Key配置,灵活切换。
- • 高鲁棒性 :内置重试、截图调试、日志追踪,失败可视化。
快速入手
安装Skyvern
pip install skyvern
运行 Skyvern,该命令对于首次运行(数据库设置、数据库迁移等)最有帮助。
skyvern quickstart
启动 Skyvern 服务和用户界面
skyvern run all
然后访问http://localhost:8080并使用用户界面运行任务
简单代码示例:
from skyvern import Skyvern
skyvern = Skyvern()
task = await skyvern.run\_task(prompt="Find the top post on hackernews today")
print(task)
还可以针对不同的目标运行任务:
from skyvern import Skyvern
# Run on Skyvern Cloud
skyvern = Skyvern(api\_key="SKYVERN API KEY")
# Local Skyvern service
skyvern = Skyvern(base\_url="http://localhost:8000", api\_key="LOCAL SKYVERN API KEY")
task = await skyvern.run\_task(prompt="Find the top post on hackernews today")
print(task)
还有更多高级用法,可自行探索!
核心理念
让 AI 像人类一样「看」网页,并理解网页,而不是依赖 DOM。
它主要依赖:
- • 网页截图
- • 视觉大模型(VLM)
- • LLM 对元素内容和页面结构的理解
- • 浏览器自动化控制(如 Playwright)
这意味着 Skyvern 能做的事包括:
- • 识别按钮、输入框、文本、标签、图标等
- • 判断页面布局
- • 理解页面意图(如登录、列表、表格、分页)
- • 根据任务自动规划步骤并执行
典型能力
① 自动执行常见网页任务:对于自动化登录、后台数据下载、填写表单、批量处理网页任务,非常适合。
② 可视化工作流:内置了一个可视化界面,可以像搭积木一样串联多个任务,对于非工程师或运维团队来说特别友好。
③ 模拟人的操作:与纯 API/脚本调用不一样,它模拟的是真实用户行为。所以它执行的任务更加接近真实环境,不容易被反爬机制识别。
写在最后
Skyvern 是我近半年见过最实用、最具潜力的开源自动化工具之一。
它靠“视觉 + AI”来理解页面结构,不依赖DOM,不怕改版,真正适合:
- • 稳定的自动化流程
- • 企业级的批量任务处理
- • 敏捷的场景扩展
未来网页自动化的核心不再是 XPath,而是让 AI 像人一样读网页。
GitHub 项目地址:https://github.com/Skyvern-AI/skyvern
如果本文对您有帮助,也请帮忙点个 赞👍 + 在看 哈!❤️
在看你就赞赞我!
