今天给大家介绍一款颠覆性的开源无头浏览器——Lightpanda。这是一款从零开始全新编写的无头浏览器,不基于Chromium也不基于WebKit,而是使用Zig语言开发,主打AI代理和自动化场景,性能远超传统浏览器。
项目介绍
Lightpanda是一款专为AI代理和自动化设计的全新无头浏览器。项目使用Zig语言从零编写,不依赖Chromium或WebKit,在性能和资源消耗上实现了质的飞跃。在GitHub上已获得超过28000颗星标,受到开发者社区的广泛关注。
特色功能
1. 极致性能
根据官方基准测试,在AWS EC2 m5.large实例上抓取933个真实网页:
内存占用(100页):Lightpanda仅123MB,Headless Chrome需要2GB,相差约16倍
执行时间(100页):Lightpanda仅5秒,Headless Chrome需要46秒,快约9倍
2. 全新架构
不是Chromium的分支,不是WebKit的补丁,而是从零用Zig编写的全新浏览器。Zig语言带来了更好的内存控制和更快的执行速度。
3. 多种使用方式
提供命令行工具(fetch命令)可直接获取网页
提供CDP(Chrome DevTools Protocol)服务器,可与Puppeteer无缝集成
提供Docker镜像,支持Linux amd64/arm64架构
4. Markdown输出
支持直接将网页转换为Markdown格式,方便后续处理和内容提取。
5. 丰富的等待策略
支持–wait-until、–wait-ms、–wait-selector和–wait-script等多种等待策略,满足复杂网页的抓取需求。
6. 遵循Robots协议
默认遵循robots.txt,可通过–obey-robots控制。
安装步骤
Linux安装(x86_64)
curl -L -o lightpanda https://github.com/lightpanda-io/browser/releases/download/nightly/lightpanda-x86_64-linux && chmod a+x ./lightpanda
MacOS安装(aarch64)
curl -L -o lightpanda https://github.com/lightpanda-io/browser/releases/download/nightly/lightpanda-aarch64-macos && chmod a+x ./lightpanda
Docker安装
docker run -d –name lightpanda -p 127.0.0.1:9222:9222 lightpanda/browser:nightly
使用方法
方法一:命令行直接抓取
# 获取HTML
./lightpanda fetch –obey-robots –dump html –log-format pretty –log-level info https://example.com
# 获取Markdown
./lightpanda fetch –obey-robots –dump markdown –log-format pretty –log-level info https://example.com
# 等待特定元素后抓取
./lightpanda fetch –wait-selector “.content” –dump html https://example.com
方法二:Puppeteer集成
import puppeteer from ‘puppeteer-core’;
const browser = await puppeteer.connect({
browserWSEndpoint: “ws://127.0.0.1:9222”,
});
const context = await browser.createBrowserContext();
const page = await context.newPage();
await page.goto(‘https://example.com’, {waitUntil: “networkidle0”});
const links = await page.evaluate(() => {
return Array.from(document.querySelectorAll(‘a’)).map(row => row.getAttribute(‘href’));
});
console.log(links);
方法三:Docker作为CDP服务
# 启动CDP服务器
docker run -d –name lightpanda -p 127.0.0.1:9222:9222 lightpanda/browser:nightly serve –obey-robots
# 然后用Puppeteer连接ws://127.0.0.1:9222
适用场景
AI代理网页交互:为AI Agent提供快速、节省资源的网页浏览能力
大规模网页爬虫:抓取大量网页时显著节省内存和时间
自动化测试:快速执行UI自动化测试
内容提取:大规模内容采集和文本提取
无头浏览服务:作为服务端渲染或预渲染解决方案
开源协议
Lightpanda采用开源协议,具体协议类型请参考GitHub仓库。
GitHub仓库:https://github.com/lightpanda-io/browser
官网:https://lightpanda.io
服务支持:如有兴趣不会搭建,可以联系微信:WRYD6166,开源项目搭建10-50元。








暂无评论内容