Puppeteer核心库v24.8.0发布:新增浏览器扩展管理能力
项目简介
Puppeteer是一个由Google Chrome团队维护的Node.js库,它提供了一套高级API来控制Chromium或Chrome浏览器。通过Puppeteer,开发者可以自动化完成网页截图、PDF生成、表单提交、UI测试等浏览器操作。Puppeteer-core是Puppeteer的核心模块,不包含浏览器下载功能,适合需要自定义浏览器环境的场景。
版本亮点
最新发布的Puppeteer-core v24.8.0版本带来了几项重要更新,特别是在浏览器扩展管理方面有了显著增强。
浏览器扩展管理功能
-
enableExtensions启动选项
新版本新增了enableExtensions启动选项,允许开发者在启动浏览器时直接启用扩展功能。这个布尔值选项为扩展管理提供了基础支持。 -
installExtension/uninstallExtension方法
Browser类新增了两个关键方法:installExtension:用于安装浏览器扩展uninstallExtension:用于卸载已安装的扩展
这些新增功能为自动化测试中需要验证扩展行为的场景提供了官方支持,开发者现在可以更灵活地控制扩展的安装和卸载过程。
浏览器引擎更新
-
Chromium升级至136.0.7103.49
内置的Chromium浏览器引擎更新到了136版本,带来了最新的浏览器特性和安全修复。 -
Firefox升级至138.0.1
对Firefox的支持也同步更新到了138.0.1版本,修复了之前版本中存在的问题。
技术细节与改进
流传输错误处理优化
新版本改进了PipeTransport中的可写流错误处理机制。现在当管道传输过程中发生错误时,系统能够更可靠地捕获和处理这些异常,提高了自动化脚本的稳定性。
依赖项更新
底层依赖的@puppeteer/browsers包从2.10.2升级到了2.10.3版本,包含了浏览器管理相关的基础功能改进。
应用场景
这些更新特别适合以下开发场景:
- 浏览器扩展测试:现在可以自动化测试扩展的安装、卸载和功能验证
- 多扩展环境测试:验证不同扩展组合下的网页行为
- 浏览器兼容性测试:利用最新版浏览器引擎测试网页兼容性
升级建议
对于正在使用Puppeteer进行浏览器自动化测试的团队,建议评估新版本中的扩展管理功能是否能简化现有测试流程。特别是那些需要测试浏览器扩展交互的项目,这些新API将大大减少自定义实现的工作量。
升级时需要注意检查现有代码是否依赖特定浏览器版本的行为,因为新版浏览器引擎可能会引入细微的行为变化。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0150- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0111