chrome.pageCapture

说明

使用 chrome.pageCapture API 可将标签页另存为 MHTML。

MHTML 是大多数浏览器都支持的标准格式。它将一个网页及其所有资源(CSS 文件、图片...)封装在单个文件中。

请注意,出于安全考虑,只能从文件系统加载 MHTML 文件,并且该文件只能在主框架中加载。

权限

pageCapture

您必须在扩展程序清单中声明“pageCapture”权限,才能使用 pageCapture API。例如:

{
  "name": "My extension",
  ...
  "permissions": [
    "pageCapture"
  ],
  ...
}

方法

saveAsMHTML()

Promise
chrome.pageCapture.saveAsMHTML(
  details: object,
  callback?: function,
)

以 MHTML 格式保存具有指定 ID 的标签页的内容。

参数

  • 明细

    对象

    • tabId

      number

      要另存为 MHTML 的标签页 ID。

  • callback

    函数(可选)

    callback 参数如下所示:

    (mhtmlData?: ArrayBuffer)=>void

    • mhtmlData

      ArrayBuffer 可选

      Blob 形式的 MHTML 数据。

返回

  • Promise<ArrayBuffer|undefined>

    Chrome 116 及更高版本

    Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。