跳到主要内容

Download

Download 对象由页面通过 page.on('download') 事件分发。

当浏览器上下文关闭时,属于浏览器上下文的所有下载文件都将被删除。

下载事件在下载开始时发出。下载路径在下载完成后可用。

// Start waiting for download before clicking. Note no await.
const downloadPromise = page.waitForEvent('download');
await page.getByText('Download file').click();
const download = await downloadPromise;

// Wait for the download process to complete and save the downloaded file somewhere.
await download.saveAs('/path/to/save/at/' + download.suggestedFilename());

方法

cancel

添加于: v1.13 download.cancel

取消下载。如果下载已完成或已取消,则不会失败。成功取消后,download.failure() 将解析为 'canceled'

用法

await download.cancel();

返回值


createReadStream

在 v1.9 之前添加 download.createReadStream

返回成功下载的可读流,或为失败/取消的下载抛出错误。

用法

await download.createReadStream();

返回值


delete

在 v1.9 之前添加 download.delete

删除下载的文件。如有必要,将等待下载完成。

用法

await download.delete();

返回值


failure

在 v1.9 之前添加 download.failure

返回下载错误(如果有)。如有必要,将等待下载完成。

用法

await download.failure();

返回值


page

添加于: v1.12 download.page

获取下载所属的页面。

用法

download.page();

返回值


path

在 v1.9 之前添加 download.path

返回成功下载的下载文件路径,或为失败/取消的下载抛出错误。该方法如有必要将等待下载完成。当远程连接时,该方法会抛出错误。

请注意,下载的文件名是随机 GUID,使用 download.suggestedFilename() 获取建议的文件名。

用法

await download.path();

返回值


saveAs

在 v1.9 之前添加 download.saveAs

将下载复制到用户指定的路径。在下载仍在进行中时调用此方法是安全的。如有必要,将等待下载完成。

用法

await download.saveAs('/path/to/save/at/' + download.suggestedFilename());

参数

  • path string#

    应将下载复制到的路径。

返回值


suggestedFilename

在 v1.9 之前添加 download.suggestedFilename

返回此下载的建议文件名。它通常由浏览器根据 Content-Disposition 响应头或 download 属性计算得出。请参阅关于 whatwg 的规范。不同的浏览器可以使用不同的逻辑来计算它。

用法

download.suggestedFilename();

返回值


url

在 v1.9 之前添加 download.url

返回下载的 url。

用法

download.url();

返回值