Skip to content

共享池

♻️ `pkg/sdk/shared.go` — 无需管理 Client 的便捷函数。

Shared* 函数底层用进程内全局共享池(pool_singleton),适合脚本/CLI 风格的零散调用,自动复用 Chrome。

📁 源码:pkg/sdk/shared.go

函数

符号源码说明
SharedScreenshot(url, opts)L24截图
SharedCapture(url, options...)L29链式
SharedCaptureWithContextL34带 ctx
SharedScreenshotWithContextL39带 ctx
SharedScreenshotBytesL62取字节
SharedScreenshotHTMLL105取 HTML
SharedScreenshotHeadersL117取响应头
SharedScreenshotCookiesL136取 Cookies
SharedScreenshotConsoleL155取 Console
SharedScreenshotNetworkL174取网络日志
SharedScreenshotWithFormatL193自定义格式
SharedScreenshotToPathL209直接存盘

与 Client 的区别

  • Client:显式构造、显式关闭,控制力强
  • Shared*:零管理,首次调用自动建池,进程退出时释放

内部流转

何时用

Shared vs Client,一句话抉择

  • 🪶 一次性脚本/演示/示例SharedCapture,零管理,写一行跑一次
  • 🏢 长驻服务/需要自定义池大小/远程 Chrome/精确关闭时机Client

Shared* 首次调用自动建全局单例池,进程退出时释放——你完全不用管生命周期,代价是控制力弱。

需要细粒度控制(自定义池大小、远程 Chrome、关闭时机)用 Client

下一步

基于 MIT 许可发布