尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Lightpanda 无头浏览器:用 1/9 内存快速跑完自动化任务

Lightpanda 无头浏览器:用 1/9 内存快速跑完自动化任务 Lightpanda 无头浏览器用 1/9 内存快速跑完自动化任务【免费下载链接】browserLightpanda: the headless browser designed for AI and automation项目地址: https://gitcode.com/GitHub_Trending/browser32/browser它用传统浏览器 1/9 的内存跑完同样的自动化任务执行速度还能快 11 倍——这就是 Lightpanda Browser一个专为 AI 代理和无头自动化场景从零用 Zig 编写的无头浏览器。不是 Chromium 的分支不是 WebKit 的补丁而是一套完整的、体量接近系统工具的轻量浏览引擎。替代重型浏览器的三个典型场景你手上有一批网页要抓但不想为每个并发实例分配 2GB 内存你给 AI 代理接了个浏览器后端却发现 Chromium 把 CPU 和内存吃满或者你只是想在 CI 里跑几轮 E2E 测试嫌 headless Chrome 冷启动太慢。这三种场景正是 Lightpanda 被设计出来的原因官方基准测试中单实例峰值内存压到 123MB 级别100 页爬取 5 秒完成对比 headless Chrome 的 2GB 和 46 秒差距一目了然。5 分钟安装并拉起 CDP 服务最快的路径是直接从源码构建省掉对预编译二进制 glibc 依赖的额外排查git clone https://gitcode.com/GitHub_Trending/browser32/browser cd browser make build构建完成后一行命令启动 CDP 服务器Puppeteer、Playwright 即可通过 WebSocket 接入./zig-out/bin/lightpanda serve --host 127.0.0.1 --port 9222启动后你就可以像操作 headless Chrome 一样在自动化脚本里把browserWSEndpoint指向ws://127.0.0.1:9222执行导航、截图、DOM 查询等全部标准 CDP 操作。fetch 与 serve 两条命令速览日常使用基本围绕两个子命令展开fetch负责访问一个 URL 并输出结果serve负责长期挂一个 CDP 端点。# 抓取页面并输出渲染后的 HTML ./zig-out/bin/lightpanda fetch --dump html https://example.com # 或转成 Markdown方便直接喂给 LLM ./zig-out/bin/lightpanda fetch --dump markdown https://example.comfetch还支持--wait-until、--wait-selector等参数来控制等待时机serve启动后就是一个标准的 CDP 端点任何支持 Chrome DevTools 协议的自动化框架都能直接对接无需额外适配层。定位源码DOM、JS 与网络层如果你需要深入定制仓库结构按职责切得很干净。HTML 解析与 DOM 树构建集中在 浏览器核心模块JavaScript 执行环境在 src/browser/js/ 目录底层链接 V8 引擎网络请求层基于 libcurl 封装在 网络层与 Puppeteer 对接的 Chrome DevTools 协议实现在 CDP 模块。四个目录各管一段改起来互不干扰。资源受限环境的 3 个调优要点第一生产环境里设置LIGHTPANDA_DISABLE_TELEMETRYtrue关闭遥测上报省掉后台网络开销。第二make build默认走 ReleaseFast 优化调试阶段需要断点时换用make build-dev即可切到 Debug 模式。第三上生产前跑一遍make test它能覆盖 src/browser/tests/ 下从 DOM 操作、事件循环到网络请求的全套用例确认本地环境无误再部署。Lightpanda 把无头浏览器做到了接近系统工具的体量1/9 的内存和 11 倍的速度不是 PPT 数字而是你在单机上多开几十个实例时真金白银的余量。下一步先跑make test确认本地构建和测试全部通过然后挑一个你手上的真实页面用fetch --dump markdown试一把。【免费下载链接】browserLightpanda: the headless browser designed for AI and automation项目地址: https://gitcode.com/GitHub_Trending/browser32/browser创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表