探索新的 `servo` crate

Simon Willison's Blog 工具

摘要

Servo 浏览器引擎现在作为一个可嵌入的 Rust crate (v0.1.0) 可用,使开发者能够将网页渲染能力集成到 Rust 应用中。一个新的 CLI 工具 `servo-shot` 展示了其使用基于软件渲染管线将网页渲染为 PNG 的能力。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/04/20 08:28

# 研究:探索新的 `servo` crate 来源:https://simonwillison.net/2026/Apr/13/servo-crate-exploration/ 研究:探索新的 `servo` crate(https://github.com/simonw/research/tree/main/servo-crate-exploration#readme)——在 2026 年 4 月发布 `servo` v0.1.0 crate(博客文章)之后,一份简洁的研究显示,Servo 现在是一个可嵌入的 Rust 浏览器引擎,具有清晰的 API,围绕 `ServoBuilder`、`WebView` 和像素读取方法构建。一个无头 CLI 工具(`servo-shot`)可以成功地将 URL 或 HTML 文件渲染为 PNG,基于稳定版 Rust 构建,并拥有强大的软件渲染管线。 Servo 现已可在 crates.io 上获取(https://servo.org/blog/2026/04/13/servo-0.1.0-release/),Servo 团队宣布了 `servo` crate(https://crates.io/crates/servo)的初始版本,该 crate 将其浏览器引擎打包成一个可嵌入的库。 我让 Claude Code 承担这个任务(https://github.com/simonw/research/pull/108),任务是弄清楚它能做什么,构建一个使用它的 CLI 截图工具,并研究它能否被编译为 WebAssembly。 `servo-shot` Rust 工具运行得相当不错: `` git clone https://github.com/simonw/research cd research/servo-crate-exploration/servo-shot cargo build ./target/debug/servo-shot https://news.ycombinator.com/ `` 以下是结果: 一张精确渲染的 Hacker News 首页截图 由于 Servo 大量使用线程和依赖项(如 SpiderMonkey),将其本身编译为 WebAssembly 并不可行,但 Claude 确实构建了这个游乐场页面(https://simonw.github.io/research/servo-crate-exploration/html5ever-wasm-demo/www/),用于尝试 WebAssembly 构建的 `html5ever` 和 `markup5ever_rcdom` crate,提供了一个将 HTML 片段转换为解析树的工具。

相似文章

我用Rust构建了一个自托管的上下文赌博机装置,并部署在一个实时的AI交易产品上。在发现运行时错误之前,先找到了自己配置中的两个错误。

Reddit r/ArtificialInteligence

宣布两个开源Rust项目:Lycan(一种用于上下文赌博机的图执行语言)和Syntra(一个自托管的Docker设备,用于服务Lycan胶囊)。作者在自己的实时AI交易产品上自用测试,发现数据管道错误(而非算法问题)主导了适配工作。

视觉变换器模型的Rust实现

Reddit r/ArtificialInteligence

一个用于构建和实验视觉变换器(ViT)模型的Rust crate,提供类型化配置、可重用结构体以及可运行的示例,适用于研究和生产环境。